signalling control systems interface requirements€¦ · a railnet gateway can be implemented as a...

102
Superseded by T HR SC 01251 SP V2.0 Signalling Control Systems Interface Requirements T HR SC 01251 SP Specification Version 1.0 Issued Date: 07 May 2014 Effective Date: 07 May 2014 Important Warning This document is one of a set of standards developed solely and specifically for use on the rail network owned or managed by the NSW Government and its agencies. It is not suitable for any other purpose. You must not use or adapt it or rely upon it in any way unless you are authorised in writing to do so by a relevant NSW Government agency. If this document forms part of a contract with, or is a condition of approval by, a NSW Government agency, use of the document is subject to the terms of the contract or approval. This document may not be current. Current standards are available for download from the Asset Standards Authority website at www.asa.transport.nsw.gov.au . © State of NSW through Transport for NSW

Upload: others

Post on 01-Mar-2021

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0

Signalling Control Systems Interface Requirements

T HR SC 01251 SP

Specification

Version 1.0 Issued Date: 07 May 2014 Effective Date: 07 May 2014

Important Warning

This document is one of a set of standards developed solely and specifically for use on the rail network owned or managed by the NSW Government and its agencies. It is not suitable for any other purpose. You must not use or adapt it or rely upon it in any way unless you are authorised in writing to do so by a relevant NSW Government agency.

If this document forms part of a contract with, or is a condition of approval by, a NSW Government agency, use of the document is subject to the terms of the contract or approval.

This document may not be current. Current standards are available for download from the Asset Standards Authority website at www.asa.transport.nsw.gov.au.

© State of NSW through Transport for NSW

Page 2: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW

Standard Approval Owner: P. McGregor, Lead Signals and Control Systems Engineer Authorised by: D. Spiteri, Chief Engineer Rail Approved by: G. Bradshaw, Principal Manager Network Standards and Services on behalf of the

Asset Standards Authority Configuration Control Board

Document Control Version Summary of Change 1.0 First issue

For queries regarding this document

[email protected]

www.asa.transport.nsw.gov.au

Page 3: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 3 of 102

Preface

The Asset Standards Authority (ASA) develops, controls, maintains, and publishes standards

and documentation for transport assets for New South Wales, using expertise from the

engineering functions of the ASA and industry.

ASA publications include RailCorp engineering standards that were previously managed by

RailCorp until July 2013.

This document supersedes RailCorp standard SPG 1251 Signalling Control System Interface

Requirements Specification, Version 1.3.

The changes to previous content include:

updates to reflect organisational changes and resulting changes in responsibilities

minor amendments and clarification to content

conversion of the standard to ASA numbering, format and style

Page 4: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 4 of 102

Table of contents

1. Introduction .......................................................................................................................................6

1.1 Overview of RailNet...........................................................................................................................6 1.2 RailForm.............................................................................................................................................6 1.3 RailNet system functions .................................................................................................................6 1.4 Purpose of this document................................................................................................................6

2. Reference and definitions ................................................................................................................7

2.1 Referenced documents ....................................................................................................................7 2.2 Screen displays in this document ...................................................................................................7 2.3 Definitions..........................................................................................................................................7

3. RailNet system architecture.............................................................................................................8

3.1 Overview ............................................................................................................................................8 3.2 Rail control systems network ..........................................................................................................8 3.3 Operational systems network ..........................................................................................................8 3.4 External systems network................................................................................................................9

4. RailForms command structure ........................................................................................................9

4.1 XML semantics ..................................................................................................................................9 4.2 Wild characters................................................................................................................................10 4.3 Common tags ..................................................................................................................................10 4.4 Full path of DTD...............................................................................................................................11

5. Login, logoff and keep session open............................................................................................13

5.1 HTTP communication .....................................................................................................................13 5.2 Login.................................................................................................................................................14 5.3 Logoff ...............................................................................................................................................16 5.4 Keep session alive ..........................................................................................................................17

6. Electrical scadaNet railforms.........................................................................................................18

6.1 Context .............................................................................................................................................18 6.2 Functionality ....................................................................................................................................19 6.3 Electrical section status change ...................................................................................................19 6.4 Electrical section power status report ..........................................................................................22 6.5 120 V Signalling power supply status report ...............................................................................24 6.6 Trips in electrical sections .............................................................................................................30

7. Train running information (TRI) RailForms ..................................................................................34

7.1 Objectives ........................................................................................................................................34 7.2 Active trips.......................................................................................................................................35 7.3 Trips at locations.............................................................................................................................39 7.4 Find trips ..........................................................................................................................................43 7.5 Net report .........................................................................................................................................47

8. Timetable..........................................................................................................................................52

8.1 Objectives ........................................................................................................................................52 8.2 Version .............................................................................................................................................52 8.3 Timetable status..............................................................................................................................52 8.4 Timetable at node railform .............................................................................................................56 8.5 Timetable download........................................................................................................................61

9. Publishing and subscribing ...........................................................................................................68

9.1 Subscribe .........................................................................................................................................68

Page 5: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 5 of 102

9.2 Heartbeat message .........................................................................................................................82 9.3 Unsubscribe.....................................................................................................................................83

10. OSS information update .................................................................................................................84

10.1 RCS update request ........................................................................................................................84 10.2 RCS update response.....................................................................................................................86

Appendix A - Status codes in the server’s response messages...............................................................89

Appendix B - Trip certainty values ...............................................................................................................91

Appendix C - Asset status attributes............................................................................................................92

Appendix D - Alarm types..............................................................................................................................99

Page 6: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 6 of 102

1. Introduction

1.1 Overview of RailNet

The primary purpose of the RailNet system is to provide a number of levels of secure access to

signal control infrastructure data in a standard format and provide a standard protocol that will

be used by internal and external systems to communicate with each other.

1.2 RailForm

RailForm has been developed to:

provide a lasting standard for the transfer of interface data within the overall RailCorp

Operational Data Network (RODNET)

structure and define interface data to permit automated processing, storage and retrieval

of information

improve the accuracy, remove ambiguity and standardise the drafting, processing and

handling of data

ensure, by design, that data transfer contain only the essential information required for

the elements and overall functioning of the architecture

ensure that information transferred across interfaces can be manually interpreted or input

as the need dictates

provide a standard for information exchange with systems and authorities external to the

architecture that does not impose unnecessary implementation constraints on the

external system or authority

1.3 RailNet system functions

The RailNet system performs the following functions:

receives information from various systems

stores the information

validates the information is consistent between systems

synchronises the information between systems

distribute the relevant information to operators/clients

1.4 Purpose of this document

The proposed system will define the protocol used to communicate between applications and

provide the gateways between the network levels to allow systems at each level to obtain data

in a standard way.

Page 7: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 7 of 102

The protocol used by the system will use RailForms as the standard method of data exchange.

RailForms defines the data format used to communicate between systems using the XML

standard.

2. Reference and definitions

2.1 Referenced documents

None.

2.2 Screen displays in this document

Where appropriate, this document gives an indication of screen displays produced by the

software. These screens are generally produced using dummy data, and are therefore intended

only as a guide.

2.3 Definitions

ATRICS Advanced train running and information control system

DOM Document object model

DTD Document type definition

GUID Globally unique identifier

HTML Hyper text mark-up language

HTTP Hyper text transfer protocol

HTTPS Secure hyper text transfer protocol

OSS Operational system server

PICS Passenger information control system

RCS Rail control system (i.e. train describer)

RCSNET Rail control system network

RFS Rail form service

SQL Sturctured query language

SSL Secure socket layer

TD Train describer

URL Unique resource locator

VB Microsoft Visual Basic

VC++ Microsoft Visual C++

VML Vector mar-kup language

Page 8: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 8 of 102

W3C World Wide Web consortium (www.w3c.org)

XHTML Extensible hyper text mark-up language

XML Extended mark-up language

XSL Extensible stylesheet language

3. RailNet system architecture

3.1 Overview

The RailNet System provides a logically layered network, with each layer providing secure

access to data and services from the lower layers. A RailNet gateway server is used to connect

adjacent layers of the network. Systems on a higher level layer will connect to the RailNet

gateway server for that level in order to obtain data from the next lower level.

3.2 Rail control systems network

The rail control system network (RCSNET) is the bottom layer of the network; it contains metro

signal control (MSC) systems such as rail control systems that manage the movement of trains

on the rail network. Systems on the rail control system network will be providers of data and

control functions.

The RCSNET is the most secure layer of the network and can only be accessed by systems at

higher levels via a RailNet Gateway.

Each system connecting to the RCSNET can communicate with other systems on the RCSNET

directly using the railnet protocol. Each system will provide its own security mechanism to

prevent unauthorised access from other systems.

A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as

a dual sided system it will still provide a single logical connection point for other systems to

connect to.

Systems connected directly to the RCSNET will include rail control systems, the electrical

SCADA system and METRO TRAIN radio.

3.3 Operational systems network

The operational systems network (OSNET) is the middle layer of the network, it will contain

systems that use the data provided by the RCSNET, made available by the operational system

server (OSS) which is the RailNet gateway for the OSNET.

Each system connecting to the OSNET will connect to the OSS using the RailNet protocol. The

OSS will provide secure access to data from the RCSNET. Systems connected to the OSNET

will include the passenger information control system (PICS) that will connect to the OSS.

Page 9: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 9 of 102

In order to provide redundancy the OSS will be implemented on a clustered system, this will

provide a single point of connection for clients that will automatically fail over to a standby

system if the master system fails. If the master fails the client will detect a loss of connection

and have to reconnect, but it will not be aware that it is reconnecting to a different physical

system.

3.4 External systems network

The external systems network (ESNET) is the top layer of the network. It will contain external

systems that consume data provided by the RSN, made available by the external system server

(ESS) that is the RailNet gateway for the ESNET.

Each system connecting to the ESNET will connect to the ESS using the RailNet protocol. The

ESS will provide secure access to the data from the OSNET.

4. RailForms command structure

RailForms are XML based commands between clients and RailForms services.

4.1 XML semantics

The next paragraphs present a simple overview of this subject.

4.1.1 The document

XML is modelled as a 'document' that is composed of 'elements' in a tree structure. The

document has a single 'root element' from which all other elements are descendants on

branches.

A tree structure allows the representation of the data as well as the relationships between data

members. The document tree organises its elements into a hierarchy expressing containment

and data types.

A RailForm might consist of an automatic signal, a controlled signal, and a set of points. The

signals and points all have asset ids. The signals both have an aspect, and the points have a

locking status. Each of these (signals, points, asset id, locking status, and aspect) may be a

RailForm element or an attribute of a RailForm element.

4.1.2 Elements

Elements are delimited by tags. Tags can be 'start-tags', 'end-tags'. An empty element is one

that does not contain a data value or any child tags.

Tags are always delimited by the '<' and '>' symbols.

Each start-tag must be followed by a corresponding end-tag. Empty elements are allowed. This

means the element has no end-tag, but finishes with a slash.

Page 10: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 10 of 102

For example, <RCS name=”SYDNEY”></RCS> and <RCS name=”SYDNEY”/> are the same.

4.1.3 Attributes

Elements may have attributes. Each attribute value must be enclosed in quotes and must

appear in the start tag, or in an empty element.

Figure 1 shows the ‘name’ attributes in the <RCS> start tag and <LOCATION> empty elements.

<RCS name="SYDNEY"> <LOCATION name="CSUM"/> <LOCATION name="E740"/> </RCS>

Figure 1 – Example of 'name' attributes

4.1.4 Data values

All data values are case sensitive.

Spaces are significant. Refer to the XML format definition for a discussion of issues concerning

line feeds and carriage returns.

4.2 Wild characters

Wild characters are useful to request a specified pattern match.

Table 1 – Wild character meaning

Wild character Meaning

* It is a character that represents one or more other characters. It means "any number of characters," to search for parts of a word.

? Matches any single character, and can be used as either a prefix or a suffix.

Examples:

‘Mc*’ searches for all strings that begin with the letters Mc (McBadden).

‘*inger’ searches for all strings that end with the letters inger (Ringer, Stringer).

‘*en*’ searches for all strings that contain the letters en anywhere in the string (Bennet, Green,

McBadden).

‘?heryl’ searches for all six-letter names ending with the letters heryl (Cheryl, Sheryl).

4.3 Common tags

There are three common tags that apply to all XML documents exchanged between server and

clients. Tag names in XML and DTD are all case sensitive. (i.e. <SESSION> and <Session> tag

name is different)

<RailFormName Version=”n.nn”>

It is the tag to specify the name of a RailForm and version number.

Page 11: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 11 of 102

I.e. <RFS_Request_Login Version=”1.0”>

<SESSION>

All incoming and outgoing XML document must include a <SESSION> tag. Session tag includes

a <SessionId> tag that is a session id allocated by the server to maintain connection states.

<RESPONSE_RESULT>

All outgoing XML document from the server must include a <RESPONSE_RESULT> tag.

4.4 Full path of DTD

In each RailForm, OSS requires the client to specify the full path of the DTD in order for it to

validate the XML against it.

The format will be http://Server_Name/RodNet/Dtd/DTD_File_Name where:

Server_Name will the name of the OSS server

DTD_File_Name will the name of the DTD file

As an example : <!DOCTYPE RFS_REQUEST_LOGIN SYSTEM

"http://RICOSS/RodNet/Dtd/RFS_REQUEST_LOGIN.DTD">

4.4.1 <SESSION> tag

It contains following three child element tags.

<SESSION_ID timeout=”min”>

It is a random Session Id assigned by the server to uniquely identify a client and Session

Timeout in minutes.

<USER_VALUES>

A client may include a <USER_VALUES> tag in a request command to the server. The server

will then include it in a response XML to the client. Its main usage will be as a client side

session variables that a client may use for such things tracing responses to request etc.

<SERVER_VALUES>

Contains server data that is to be included in all client requests. It is to allow the server to

maintain session state variables.

4.4.1.1 DTD

<!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED>

Page 12: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 12 of 102

<!ELEMENT SERVER_VALUES (VALUE+)>

Table 2 – Values for <SESSION> tag

Parent Element Element Name Attribute Name

Data Type

Size Values

<SESSION> < SESSION_ID> Char 32 Random number (GUID) assigned by the server.

<SESSION> < SESSION_ID> timeout Integer 4 Timeout value in minutes. Valid range is between 0 and 1440. Zero value indicates NO Timeout limit.

<SESSION> <USER_VALUES>

<USER_VALUES> <VALUE> key VarChar 255 Optional

<USER_VALUES> <VALUE> VarChar 255 Optional

<SESSION> <SERVER_VALUES>

<SERVER_VALUES> <VALUE> key VarChar 255 Optional

<SERVER_VALUES> <VALUE> VarChar 255 Optional

4.4.1.2 XML sample

<SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION>

4.4.2 <RESPONSE_RESULT> tag

A thick client’s application should check the value of 'Status' attribute of the

<RESPONSE_RESULT> tag to see if the server returned a response with an error message.

STATUS CODES

0 Success

-1 Fail (Unknown reason)

1 – 4,999 Application independent status code defined by the server. (Refer to Appendix A

for status code table)

5,000 – 9,999 Application dependent status code that are agreed between the server and

applications.

4.4.2.1 DTD

Page 13: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 13 of 102

<!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Table 3 – Values for <RESPONSE_RESULT> tag

Parent Element Element Name Attribute Name

Data Type

Size

Values

Root <RESPONSE_RESULT> Status Integer 4 Refer to Appendix A

<RESPONSE_RESULT> <RESPONSE_MESSAGE> VarChar 255 Error message sent by the server if status is “-1”, otherwise it’s Empty.

4.4.2.2 XML Sample

<RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT>

5. Login, logoff and keep session open

Any client accessing the RFS (RailForm Services) will require authentication by the server. A

login request command (RFS_REQUEST_LOGIN) with valid User Id and Password need to be

sent thru SSL (Secure Socket Layer) connection to the server.

To access the SSL connection, URL should include “https://”. The "s" in https:// is very important

because it tells the user's browser to use the SSL port.

Upon receiving a login request, the server responds with a SessionId and SessionTimeout

value for each valid login that will identify clients for subsequent requests.

A SessionId is a random number (GUID) generated by the server.

A session will be expired if a client does not send a request to the server for a period specified

in the Session Timeout value in minutes. The default is 20 minutes of inactivity but this may be

adjusted in the future.

5.1 HTTP communication

5.1.1 Overview

The hypertext transfer protocol (HTTP) has been in use since 1990. HTTP is an application-

level protocol that is fast and non–resource-intensive. It is the protocol used to transmit

hypertext mark-up language (HTML) files. It can be considered a generic protocol that can be

used in a variety of ways.

HTTP is a stateless protocol, meaning that the server treats each HTTP request for a page as

an independent request; the server retains no knowledge of previous requests, even if they

occurred only seconds prior to a current request.

Page 14: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 14 of 102

5.1.2 Communication process

HTTP is a client/server protocol. This means that the client and server interact to perform a specified task in the following manner.

a) The client uses HTTP commands to communicate with the server.

b) A connection is established from the client to the server by means of TCP port 80 (the

default).

c) The request message is sent to the server.

d) The server sends a response message with the requested data to the client

5.1.3 Terms used in HTTP communication

Table 4 – HTTP terms definition

Term Definition

Connection A virtual circuit (in the transport layer) established between two application programs for the purpose of communication.

Message The basic unit of HTTP communication. It consists of a structured sequence of octets and is transmitted through the connection.

Request An HTTP request message.

Response An HTTP response message.

Resource A network data object or service that can be identified by a URL.

5.2 Login

5.2.1 Login request

This RailForm defines the XML structure that a client application must conform with when it sends a login and password to the server.

<LOGIN> tag

Login request command “RFS_REQUEST_LOGIN” must include a <LOGIN> tag with two attributes, ‘user_id’ and ‘password’.

5.2.1.1 DTD

<!ELEMENT RFS_REQUEST_LOGIN (SESSION?, LOGIN)> <!ATTLIST RFS_REQUEST_LOGIN version CDATA #REQUIRED> <!ELEMENT SESSION (USER_VALUES?)> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT LOGIN EMPTY> <!ATTLIST LOGIN user_id CDATA #REQUIRED password CDATA #REQUIRED>

Page 15: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 15 of 102

Table 5 – Values for Login Request

Parent element

Element name Attribute name

Data type Size Values

Root <LOGIN> user_id VarChar 20 A valid User Id

Root <LOGIN> password VarChar 20 A valid password

5.2.1.2 Sample XML

<VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> </SESSION> <LOGIN user_id="abc" password="xyz"/> </RFS_REQUEST_LOGIN>

5.2.2 Login response

Upon receiving a login request, the server responds with a Session Id and SessionTimeout value.

5.2.2.1 DTD

<!ELEMENT RFS_RESPONSE_LOGIN (SESSION, RESPONSE_RESULT)> <!ATTLIST RFS_RESPONSE_LOGIN version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)>

<!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Table 6 – Values for Login response

Parent Element

Element Name Attribute Name

Data Type

Size Values

<SESSION> < SESSION_ID> Char 32 Random number (GUID) assigned by the server

<SESSION> < SESSION_ID> timeout Integer 4 Timeout value in minutes. Valid range is between 0 and 1440. Zero value indicates NO Timeout limit.

5.2.2.2 Sample XML

<?xml version="1.0"?>

Page 16: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

<!DOCTYPE RFS_RESPONSE_LOGIN SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_LOGIN.DTD"> <RFS_RESPONSE_LOGIN version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_RESPONSE_LOGIN>

© State of NSW through Transport for NSW Page 16 of 102

5.3 Logoff

5.3.1 Logoff request

Client may send a logoff request at any time to close a session.

5.3.1.1 DTD

<!ELEMENT RFS_REQUEST_LOGOFF (SESSION)> <!ATTLIST RFS_REQUEST_LOGOFF version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID)> <!ELEMENT SESSION_ID (#PCDATA)>

5.3.1.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_LOGOFF SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_LOGOFF.DTD"> <RFS_REQUEST_LOGOFF version="1.0"> <SESSION> <SESSION_ID>23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> </SESSION> </RFS_REQUEST_LOGOFF>

5.3.2 Logoff response

The server returns a response to a Logoff request.

5.3.2.1 DTD

<!ELEMENT RFS_RESPONSE_LOGOFF (RESPONSE_RESULT)> <!ATTLIST RFS_RESPONSE_LOGOFF version CDATA #REQUIRED> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED>

<!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

5.3.2.2 Sample XML

<?xml version="1.0"?>

Page 17: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 17 of 102

<!DOCTYPE RFS_RESPONSE_LOGOFF SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_LOGOFF.DTD"> <RFS_RESPONSE_LOGOFF version="1.0"> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_RESPONSE_LOGOFF>

5.4 Keep session alive

It is used to keep a session open. The server extends timeout period by timeout value

requested. Zero timeout value indicates ‘no timeout’.

5.4.1 Request for keep session alive

Clients can send the request to keep a session open.

5.4.1.1 DTD

<!ELEMENT RFS_REQUEST_KEEP_SESSION_ALIVE (SESSION)> <!ATTLIST RFS_REQUEST_KEEP_SESSION_ALIVE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED>

<!ELEMENT SERVER_VALUES (VALUE+)>

5.4.1.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_KEEP_SESSION_ALIVE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_KEEP_SESSION_ALIVE.DTD"> <RFS_REQUEST_KEEP_SESSION_ALIVE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> </RFS_REQUEST_KEEP_SESSION_ALIVE>

5.4.2 Response for keep session alive

The server returns a response to a Keep-Session-Alive request.

5.4.2.1 DTD

<!ELEMENT RFS_RESPONSE_KEEP_SESSION_ALIVE (SESSION, RESPONSE_RESULT)> <!ATTLIST RFS_RESPONSE_KEEP_SESSION_ALIVE version CDATA #REQUIRED>

Page 18: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 18 of 102

<!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED>

<!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

5.4.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_KEEP_SESSION_ALIVE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_KEEP_SESSION_ALIVE.DTD"> <RFS_RESPONSE_KEEP_SESSION_ALIVE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_RESPONSE_KEEP_SESSION_ALIVE>

6. Electrical scadaNet railforms

6.1 Context

Electrical ScadaNet RailForms are designed for generic RailForms suitable for use in

transmitting information to and from electrical and signalling control systems. Initial

implementation will be through OSS as a single contact point for multiple train describer / rail

control systems for connection to a single (duplicated) Electrical ScadaNet system.

O S S T D

X M LM essag es

S ca daN e tS ys tem

R T U s

S igna lling A sse ts

R T U s

E lec trica l A sse ts

Figure 2 – Electrical ScadaNet system interfaces

Page 19: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 19 of 102

6.2 Functionality

The ScadaNet system will send messages to the OSS on the electrical sections of the rail

network without power. Upon request from the ScadaNet system, the OSS will push messages

to the ScadaNet system whenever there is a status change on the 120 V signalling power

supplies.

The OSS system will identify all trains within the electrical sections (berths) without power and

provide this information to the ScadaNet system.

ScadaNet to OSS messages are:

Request for Electrical Section Status Change. This message will contain the status and

identity of electrical section/s when the status is changed.

Request for Trips in Electrical Sections. This message will be used to request for the

identification of trips in particular Electrical Section/s.

Subscribe for 120v Signalling Power Supply Status. The ScadaNet system will connect to

the OSS to receive all status changes on the 120V Signalling Power Supplies.

Publish Acknowledgement Message. The ScadaNet needs to send the "Acknowledge"

message to every message published from the OSS.

OSS to ScadaNet messages are:

Subscription Confirmation Message. The OSS system will send a Subscription

Confirmation Message as soon as it validates a subscription request from the ScadaNet.

Publish for 120v Signalling Power Supply Status. The OSS system will send the status

and identity of 120V Signal Section/s when the power is down or recover.

Response for Electrical Section Status Change. The OSS will send this message to

indicate whether the Electrical Section Status input was received successfully or not.

Response for Trip Ids in Electrical Sections. The OSS system will send the Trip Ids in

particular Electrical Section/s to the ScadaNet system.

6.3 Electrical section status change

6.3.1 Objectives

The ScadaNet system will use this RailForm to report the status of electrical sections.

The ScadaNet system will report the current status of all electrical sections to the OSS

immediately after establishing a connection.

The status of an electrical section will be reported to the OSS when its status is changed.

The ScadaNet system requires reporting the current status of all electrical sections to the

OSS periodically (e.g. every one hour) to refresh the SQL database.

Page 20: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

6.3.2 Request for electrical section status change (ScadaNet to OSS)

© State of NSW through Transport for NSW Page 20 of 102

This RailForm is used to send the status of electrical sections to the OSS.

6.3.2.1 DTD

<!ELEMENT RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE (SESSION, ELECTRICAL_SCADA)> <!ATTLIST RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT ELECTRICAL_SECTIONS (ELECTRICAL_SECTION+)> <!ATTLIST ELECTRICAL_SECTIONS source_system CDATA #REQUIRED> txn_type (add|update|remove|removeall) #REQUIRED> <!ELEMENT ELECTRICAL_SECTION (#PCDATA)> <!ATTLIST ELECTRICAL_SECTION asset_id CDATA #REQUIRED overhead (normal|dead|earthed) #REQUIRED status_change_time CDATA #REQUIRED>

Table 7 – Values for request for electrical section status change

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <ELECTRICAL_SECTIONS> source_system VarChar 50 e.g. “ScadaNet”

Root <ELECTRICAL_SECTIONS> txn_type VarChar 10 Transaction type: “update” – Update section status

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> asset_id VarChar 50 Electrical Section name

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> Overhead VarChar 50 “normal”, “dead” or “earthed”

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> status_change _time

datetime 8 yyyy-mm-dd hh:mm:ss The time that Electrical Section status changed

6.3.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE.DTD"> <RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE version="1.1"> <SESSION> <SESSION_ID timeout="20">0DF69C204AF211D4AD5C00508B6B7F7E</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES>

Page 21: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 21 of 102

<VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <ELECTRICAL_SECTIONS source_system="ScadaNet" txn_type="update"> <ELECTRICAL_SECTION asset_id="ES111" overhead="dead"

status_change_time="2000-07-06 15:23:00"/> <ELECTRICAL_SECTION asset_id="ES222" overhead="normal"

status_change_time="2000-07-06 15:23:00"/> </ELECTRICAL_SECTIONS> </RFS_REQUEST_ELECTRICAL_SECTION_STATUS_CHANGE>

6.3.3 Response for electrical section status change (OSS to ScadaNet)

The OSS will send this RailForm to report a transaction status, “0” for success or Non-zero for fail (See Appendix A).

6.3.3.1 DTD

<!ELEMENT RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE (SESSION, RESPONSE_RESULT)> <!ATTLIST RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Table 8 - Values for response for electrical section status change

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <RESPONSE_RESULT> status Integer 4 0: Success non-zero: See Appendix A

<RESPONSE_RESULT> <RESPONSE_MESSAGE> VarChar 255 Error message sent by OSS if status is “-1”, otherwise it’s Empty.

6.3.3.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE.DTD"> <RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE>

Page 22: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 22 of 102

</USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_RESPONSE_ELECTRICAL_SECTION_STATUS_CHANGE>

6.4 Electrical section power status report

6.4.1 Objectives

This RailForm is used to provide status information of Electrical Sections. The ScadaNet system

will send a request message for statuses of interest (e.g. ‘dead’ and/or ‘earthed’) and OSS will

send a response message for a list of Electrical Sections in matching statuses. The OSS will

report status information of all Electrical Sections if no status code is found in a request

message.

6.4.2 Request for electrical section power status (ScadaNet to OSS)

This RailForm is used to request the Electrical Section Power Status Report.

6.4.2.1 DTD

<!ELEMENT RFS_REQUEST_ELECTRICAL_SECTION_POWER_STATUS(SESSION,SOURCE_SYSTEM+)> <!ATTLIST RFS_REQUEST_ELECTRICAL_SECTION_POWER_STATUS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT SOURCE_SYSTEM (STATUS*)> <!ATTLIST SOURCE_SYSTEM name CDATA #REQUIRED> <!ELEMENT STATUS EMPTY> <!ATTLIST STATUS overhead CDATA #REQUIRED>

Table 9 – Values for request for electrical section power status

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <SOURCE_SYSTEM> Name VarChar 50 e.g. “ScadaNet”

<SOURCE_SYSTEM> <STATUS> Overhead VarChar 50 ‘normal’, ‘dead’ or ‘earthed’

Page 23: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 23 of 102

6.4.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_ELECTRICAL_SECTION_POWER_STATUS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_ELECTRIAL_SECTION_POWER_STATUS_REPORT.DTD"> <RFS_REQUEST_ELECTRICAL_SECTION_POWER_STATUS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <SOURCE_SYSTEM name=" ScadaNet"> <STATUS overhead="dead"/> <STATUS overhead="earthed"/> </SOURCE_SYSTEM> </RFS_REQUEST_ELECTRICAL_SECTION_POWER_STATUS>

6.4.3 Response for electrical section power status (OSS to ScadaNet)

The OSS will send this RailForm to the ScadaNet to report a list of Electrical Sections in the

statuses of interest.

6.4.3.1 DTD

<!ELEMENT RFS_RESPONSE_ELECTRICAL_SECTION_POWER_STATUS (SESSION, RESPONSE_RESULT, ELECTRICAL_SECTIONS)> <!ATTLIST RFS_RESPONSE_ELECTRICAL_SECTION_POWER_STATUS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)>

<!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

<!ELEMENT ELECTRICAL_SECTIONS (ELECTRICAL_SECTION*)> <!ATTLIST ELECTRICAL_SECTIONS source_system CDATA #REQUIRED> <!ELEMENT ELECTRICAL_SECTION EMPTY> <!ATTLIST ELECTRICAL_SECTION asset_id CDATA #REQUIRED overhead (dead|earthed|normal) #REQUIRED

status_change_time CDATA #REQUIRED>

Table 10 - Values for response for electrical section power status

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <ELECTRICAL_SECTIONS> source_system VarChar 50 e.g. “ScadaNet”

Page 24: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 24 of 102

Parent Element Element Name Attribute Data Size Values Name Type

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> asset_id VarChar 50 Electrical Section name

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> Overhead VarChar 10 “dead”, “earthed” or “normal”

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> status_change_time

VarChar 23 yyyy-mm-dd hh:mm:ss

6.4.3.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_ELECTRICAL_SECTION_POWER_STATUS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_ELECTRICAL_SECTION_POWER_STATUS.DTD"> <RFS_RESPONSE_ELECTRICAL_SECTION_POWER_STATUS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <ELECTRICAL_SECTIONS source_system=" ScadaNet"> <ELECTRICAL_SECTION asset_id="ES111" overhead="dead" status_change_time="2000-06-30 17:38:12"/> <ELECTRICAL_SECTION asset_id="ES222" overhead="dead" status_change_time="2000-06-30 17:34:27"/> </ELECTRICAL_SECTIONS> </RFS_RESPONSE_ELECTRICAL_SECTION_STATUS>

6.5 120 V Signalling power supply status report

6.5.1 Objective

This is to provide status information of Signalling Interlocking power supplies for any system

connected to OSS. Previously Electrical Control Centre operators did not have online access to

the information. Signalling Control Panels and hence Train Describer and ATRICS Rail Control

System have details on signalling Power Supply.

This message will initially be used to transmit these signalling power statuses to the electrical

ScadaNet System for Sydney, Strathfield and Sydenham TD areas but could be used for other

purposes and appended when additional TD areas are approved.

Page 25: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 25 of 102

6.5.2 Subscribe for 120 V signalling power supply status report (ScadaNet toOSS)

The ScadaNet system will use this RailForm to subscribe the 120 V Signalling power supply

status report. Once a subscription connection is made, all status changes of 120 V signalling

power supplies will be pushed to the ScadaNet system.

Subscription Profiles

<PROFILES> element in the subscription request message is used to specify a set of

subscription profiles available from the OSS. The OSS administrator creates and maintains

profiles for the subscription users. A subscription request message may include multiple

profiles.

For example, the OSS administrator may create a profile called “Metro120 v signalling

PowerSupplyStatus“and the ScadaNet can use it to subscribe for 120 V signalling power supply

status.

6.5.2.1 DTD

“RFS_SUBSCRIBE” is a common RailForm to subscribe any subscription items allowed from the OSS (e.g. Timetable and NetReports). The DTD described here only shows necessary elements for the ScadaNet.

<!ELEMENT RFS_SUBSCRIBE (SESSION, PROFILES)> <!ATTLIST RFS_SUBSCRIBE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT SUBSCRIBE (PROFILES)> <!ATTLIST SUBSCRIBE notification_type (XML|URL) "XML" delivery_method(HTTP|EMAIL) "HTTP" address CDATA #IMPLIED> <!ELEMENT PROFILES (PROFILE+)> <!ELEMENT PROFILE (#PCDATA)>

Table 11 – Values for subscribing 120 V signalling power supply status report

Parent Element

Element Name Attribute Name Data Type

Size Values

Root <SUBSCRIBE> Notification_type VarChar 10 XML or URL

Root <SUBSCRIBE> Delivery_method Varchar 10 HTTP or EMAIL

Root <SUBSCRIBE> address VarChar 255 Email address if delivery method is “EMAIL”

<SUBSCRIBE>

<PROFILES>

<PROFILES> <PROFILE> VarChar 255 “Metro120vSignalPowerSupplyStatus”

Page 26: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 26 of 102

6.5.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_SUBSCRIBE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_SUBSCRIBE.DTD"> <RFS_SUBSCRIBE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <SUBSCRIBE notification_type="XML" delivery_method="HTTP"> <PROFILES> <PROFILE>Metro120vSignalPowerSupplyStatus</PROFILE> <PROFILES> </SUBSCRIBE> </RFS_SUBSCRIBE>

6.5.3 Subscription confirmation message (OSS to ScadaNet)

The OSS will respond with a confirmation message as soon as it validates a subscription

request from the ScadaNet. The ScadaNet does not need to re-send a subscription request

once a confirmation message is received from the OSS. The ScadaNet can re-send a revised

subscription request to change subscription items.

The ‘status’ attribute in the <RESPONSE_RESULT> element indicates that the subscription

requested accepted (status=”0”) or rejected (Non-zero value status code and refer to Appendix

A for details).

6.5.3.1 DTD

<!ELEMENT RFS_SUBSCRIBE_CONFIRM (SESSION, RESPONSE_RESULT)> <!ATTLIST RFS_SUBSCRIBE_CONFIRM version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Table 12 – Values for subscription confirmation message

Parent Element Element Name Attribute Name

Data Type Size Values

Page 27: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 27 of 102

Parent Element Element Name Attribute Name

Data Type Size Values

Root <RESPONSE_RESULT> Status Integer 4 0: Successnon-zero: See Appendix A

<RESPONSE_RESULT> <RESPONSE_MESSAGE> VarChar 255 Error message sent by OSS if status is non-zero, otherwise it’s Empty.

6.5.3.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_SUBSCRIBE_CONFIRM SYSTEM "http://RICOSS/RodNet/Dtd/RFS_SUBSCRIBE_CONFIRM.DTD"> <RFS_SUBSCRIBE_CONFIRM version="1.0"> <SESSION> <SESSION_ID timeout="20">2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="queue">t1-oss-1\8374F162A65911D4AD7900508B6B7F7E</VALUE> <VALUE key="msgid">0</VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_SUBSCRIBE_CONFIRM>

6.5.4 Publish for 120 V signalling power supply status report (OSS to ScadaNet)

The OSS system will use this RailForm to publish the 120 V signalling power supply status

report whenever there is a status change on the 120 V signalling power supplies.

6.5.4.1 DTD

'RFS_PUBLISH' is a common RailForm that the OSS uses it to publish any subscription items

available (e.g. Timetable and NetReports). The DTD described here only shows necessary

elements for the ScadaNet.

<!ELEMENT RFS_PUBLISH (SESSION, RESPONSE_RESULT, PUBLISH)> <!ATTLIST RFS_PUBLISH> version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

<!ELEMENT PUBLISH (AC_POWER_SUPPLY*)> <!ELEMENT AC_POWER_SUPPLY EMPTY> <!ATTLIST AC_POWER_SUPPLY

Page 28: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 28 of 102

rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED combined_status (INDETERMINATE|NORMAL|NORMAL_SUPPLY_FAILED| EMERGENCY_SUPPLY_FAILED|ALARM|FAILED) #IMPLIED power (A|NA|UN) #IMPLIED normal (A|NA|UN) #IMPLIED emergency (A|NA|UN) #IMPLIED>

Table 13 – Values for publishing 120 V signalling power supply status report

Parent Element

Element Name Attribute Name Data Type

Size Values

Root <PUBLISH>

<PUBLISH> <AC_POWER_SUPPLY> rcs VarChar 50 e.g. “Sydney”, “Strathfield”

<PUBLISH> <AC_POWER_SUPPLY> entity_name VarChar 50 Asset Id. E.g. abc1

<PUBLISH> <AC_POWER_SUPPLY> publish_type VarChar 50 “AssetStatus”

<PUBLISH> <AC_POWER_SUPPLY> combined_status VarChar 50 “INDETERMINATE” “NORMAL” “NORMAL_SUPPLY_FAILED” “EMERGENCY_SUPPLY_FAILED” “ALARM” “FAILED”

<PUBLISH> <AC_POWER_SUPPLY> power VarChar 50 a) "A" (Available) if normal and/or emergency power is available. b) "NA" (Not Available) if both normal and emergency power is not available c) "UN" (Unavailable) if Normal power is not available and emergency power is unknown, or vice versa.

<PUBLISH> <AC_POWER_SUPPLY> normal VarChar 50 “A” for “available “ “NA” for “not_available” “UN” for “Unknown”

<PUBLISH> <AC_POWER_SUPPLY> emergency VarChar 50 “A” for “available “ “NA” for “not_available” “UN” for “Unknown”

6.5.4.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_PUBLISH SYSTEM "http://RICOSS/RodNet/Dtd/RFS_PUBLISH.DTD"> <RFS_PUBLISH version="2.2"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="queue">t1-oss-1\23XY239SDKWSEPDS90303034898SKOJ2</VALUE> <VALUE key="msgid">123456789</VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT>

Page 29: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 29 of 102

<PUBLISH> <AC_POWER_SUPPLY rcs="Sydenham" entity_name="SM808AC" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/> <AC_POWER_SUPPLY rcs="Sydenham" entity_name="SM826AC" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/> <AC_POWER_SUPPLY rcs="Sydenham" entity_name="SM865AC" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/> <AC_POWER_SUPPLY rcs="Sydenham" entity_name="SM895AC" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/> <AC_POWER_SUPPLY rcs="Sydenham" entity_name="SMA120VAC" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/> <AC_POWER_SUPPLY rcs="WardellPortBotany" entity_name="SM177AC120V"

publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/>

<AC_POWER_SUPPLY rcs="WardellPortBotany" entity_name="SMWRDAC120V" publish_type="AssetStatus" combined_status="NORMAL" power="A" normal="A" emergency="A" state_valid="VALID"/>

</PUBLISH>

</RFS_PUBLISH>

6.5.5 Acknowledgement of “publish” messages received (ScadaNet to OSS)

The ScadaNet should send an acknowledgement message whenever it receives published

messages from the OSS. This RailForm is used to notify the OSS for published messages

received.

6.5.5.1 DTD

<!ELEMENT RFS_PUBLISH_ACKNOWLEDGE (SESSION, ACKNOWLEDGED)> <!ATTLIST RFS_PUBLISH_ACKNOWLEDGE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT ACKNOWLEDGED (#PCDATA)>

Table 14 – Values for acknowledgement of published messages received

Parent Element Element Name Attribute Name

Data Type

Size Values

<SERVER_VALUES> <VALUE> Key VarChar 255 “queue” or “msgid”

<SERVER_VALUES> <VALUE> VarChar 255 Queue name or message Id to be acknowledged

ROOT <ACKNOWLEDGED> VarChar 255 OK, RESEND or INVALIDXML

6.5.5.2 Sample XML

<?xml version="1.0"?>

Page 30: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 30 of 102

<!DOCTYPE RFS_PUBLISH_ACKNOWLEDGE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_PUBLISH_ACKNOWLEDGE.DTD"> <RFS_PUBLISH_ACKNOWLEDGE version="1.0"> <SESSION> <SESSION_ID timeout="20">8374F162A65911D4AD7900508B6B7F7E</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="queue">t1-oss-1\8374F162A65911D4AD7900508B6B7F7E</VALUE> <VALUE key="msgid">1</VALUE> </SERVER_VALUES> </SESSION> <ACKNOWLEDGED>OK</ACKNOWLEDGED> </RFS_PUBLISH_ACKNOWLEDGE>

6.6 Trips in electrical sections

6.6.1 Objectives

This is to identify all trips within the electrical sections (berths) without power.

6.6.2 Request for trips in electrical sections (ScadaNet to OSS)

The ScadaNet system will use this RailForm to identify trips in the electrical sections without

power.

6.6.2.1 DTD

<!ELEMENT RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS (SESSION, ELECTRICAL_SECTIONS)> <!ATTLIST RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT ELECTRICAL_SECTIONS (ELECTRICAL_SECTION+)> <!ATTLIST ELECTRICAL_SECTIONS source_system CDATA #REQUIRED> <!ELEMENT ELECTRICAL_SECTION EMPTY> <!ATTLIST ELECTRICAL_SECTION asset_id CDATA #REQUIRED>

Table 15 – Values for request for trips in electrical sections

Parent Element Element Name Attribute Name Data Type

Size Values

Root <ELECTRICAL_SECTIONS> source_system VarChar 50 e.g. “ScadaNet”

<ELECTRICAL_SECTIONS> <ELECTRICAL_SECTION> asset_id VarChar 50 Electrical Section Name

Page 31: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 31 of 102

6.6.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS.DTD"> <RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION>

<ELECTRICAL_SECTIONS source_system=" ScadaNet"> <ELECTRICAL_SECTION asset_id="ES111" /> <ELECTRICAL_SECTION asset_id="ES222" /> </ELECTRICAL_SECTIONS>

</RFS_REQUEST_TRIPS_IN_ELECTRICAL_SECTIONS>

6.6.3 Response for trips in electrical sections (OSS to ScadaNet)

It is a response from the OSS to the SCADA system for trips operating in specified electrical

sections.

6.6.3.1 DTD

<!ELEMENT RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS (SESSION, RESPONSE_RESULT, TRIPS_IN_ELECTRICAL_SECTIONS)> <!ATTLIST RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT TRIPS_IN_ELECTRICAL_SECTIONS (ELECTRICAL_SECTION*)> <!ATTLIST TRIPS_IN_ELECTRICAL_SECTIONS source_system CDATA #REQUIRED> <!ELEMENT ELECTRICAL_SECTION (TRIP*)> <!ATTLIST ELECTRICAL_SECTION asset_id CDATA #REQUIRED overhead (normal|dead|earthed)#REQUIRED status_change_time CDATA #REQUIRED> <!ELEMENT TRIPS_AT_LOCATION (TRIP+)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED>

<!ELEMENT TRIP (DESTINATION? | STOPS? | EXPECTED | SCHEDULED? | FORMS_TRIP? | FORMED_BY_TRIP? | TRIP_STATUS_FLAGS)*>

<!ATTLIST TRIP name CDATA #REQUIRED

Page 32: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 32 of 102

trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "SPECIAL" certainty CDATA #IMPLIED cars CDATA #IMPLIED valid_trip (TRUE|FALSE) #IMPLIED stock_num CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED

departure CDATA #IMPLIED>

<!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #REQUIRED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT TRIP_STATUS_FLAGS EMPTY> <!ATTLIST TRIP_STATUS_FLAGS is_changed_status (TRUE | FALSE) #REQUIRED is_timetabled_trip (TRUE | FALSE) #REQUIRED is_timetabled_location (TRUE | FALSE) #REQUIRED is_cancelled_trip (TRUE | FALSE) #REQUIRED is_previous_day (TRUE | FALSE) #REQUIRED is_active (TRUE | FALSE) #REQUIRED is_has_run (TRUE | FALSE) #REQUIRED is_stop (TRUE | FALSE) #REQUIRED is_terminate (TRUE | FALSE) #REQUIRED is_edited (TRUE | FALSE) #REQUIRED is_original_location (TRUE | FALSE) #REQUIRED is_occupying (TRUE | FALSE) #REQUIRED>

Table 16 – Values for response for trips in electrical sections

Parent Element Element Name Attribute Name

Data Type

Size

Values

Root <TRIPS_IN_ ELECTRICAL_SECTIONS>

source_system VarChar 50 e.g. “ScadaNet”

<TRIPS_IN_ ELECTRICAL_SECTIONS>

<ELECTRICAL_SECTION> asset_id VarChar 50 Electrical Section Name

<TRIPS_IN_ ELECTRICAL_SECTIONS>

<ELECTRICAL_SECTION> overhead VarChar 10 “normal”, “dead” or “earthed”

<ACTIVE_TRIP> <TRIP> name VarChar 20 Trip Name

<ACTIVE_TRIPS> <TRIP> trip_instance Int 4 Instance number of a trip

Page 33: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 33 of 102

Parent Element Element Name Attribute Name

Data Type

Size

Values

<ACTIVE_TRIP> <TRIP> status VarChar 20 Refer to DTD for valid values

<ACTIVE_TRIP> <TRIP> certainty VarChar 20 Refer to Appendix C

<ACTIVE_TRIP> <TRIP> cars Int 4 Number of cars

<TRIP> <DESTINATION> msgid Int 4 Destination Message Id (ATRICS only)

<DESTINATION> <STATION> id Int 4 Destination Station Id (ATRICS only)

<DESTINATION> <STATION> name VarChar 50 Destination Station name (ATRICS only)

<TRIP> <STOPS> msgid Int 4 Stopping Pattern Message Id (ATRICS only)

<STOPS> <STATION> id Int 4 Stopping Station id (ATRICS only)

<STOPS> <STATION> name VarChar 50 Stopping Station name (ATRICS only)

<TRIP> <EXPECTED> arrival DateTime 19 yyyy-mm-dd hh:mm:ss ATRICS area: Actual time arrived at a location. TD area: Time stamp when TD bridge received

<TRIP> <EXPECTED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <SCHEDULED> arrival DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <SCHEDULED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

< TRIP> <FORMS_TRIP> name VarChar 20 Forms-to-trip name at a destination station (ATRICS only)

< TRIP> <FORMS_TRIP> trip_instance Int 4 Forms-to-trip instance number (ATRICS only)

< TRIP> <FORMED_BY_TRIP> name VarChar 20 Formed-by-trip name (ATRICS only)

< TRIP> <FORMED_BY_TRIP> trip_instance Int 4 Formed-by-trip instance number (ATRICS only)

6.6.3.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS.DTD">

Page 34: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 34 of 102

<RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS version="1.1"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <TRIPS_IN_ELECTRICAL_SECTIONS source_system="ScadaNet"> <ELECTRICAL_SECTION asset_id="ES111" overhead="dead" status_change_time="2000-06-30 17:36:54"> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="0529" publish_type="OccupyingTrips"> <TRIP name="3--K" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="54"> <STATION id="13" name="Central"/> </DESTINATION> <STOPS msgid="1104"> <STATION id="13" name="CENTRAL"/> <STATION id="14" name="TOWN HALL"/> <STATION id="15" name="WYNYARD"/> <STATION id="16" name="CIRCULAR QUAY"/> <STATION id="17" name="ST JAMES"/> <STATION id="18" name="MUSEUM"/> <STATION id="13" name="CENTRAL"/> </STOPS> <EXPECTED arrival="2000-60-30 17:32:54"/> </TRIP> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="A744" publish_type="OccupyingTrips"> <TRIP name="61--C" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="34"> <STATION id="8" name="MUSEUM"/> </DESTINATION> <STOPS msgid="1154"> <STATION id="813" name="WOLLI CREEK"/> <STATION id="812" name="INTERNATIONAL"/> <STATION id="811" name="DOMESTIC"/> <STATION id="810" name="MASCOT"/> <STATION id="809" name="GREEN SQUARE"/> <STATION id="7" name="CENTRAL"/>

<STATION id="8" name="MUSEUM"/>

</STOPS>

<EXPECTED arrival="2000-60-30 17:36:22"/> </TRIP> </TRIPS_AT_LOCATION> </ELECTRICAL_SECTION> <ELECTRICAL_SECTION asset_id="ES222" overhead="dead" status_change_time="2000-06-30 17:32:00"> </ELECTRICAL_SECTION> </TRIPS_IN_ELECTRICAL_SECTIONS> </RFS_RESPONSE_TRIPS_IN_ELECTRICAL_SECTIONS>

7. Train running information (TRI) RailForms

7.1 Objectives

It provides a facility to retrieve train-running information within the rail control systems (RCS). The following facilities are provided.

active trips in a single or multiple control areas

identify trips in certain locations

find trips

Page 35: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 35 of 102

Net report

TRI subscriptions

7.2 Active trips

7.2.1 Request for active trips

It is used to request all active trips for a single or multiple RCS names.

7.2.1.1 DTD

<!ELEMENT RFS_REQUEST_ACTIVE_TRIPS (SESSION, ACTIVE_TRIPS)>

<!ATTLIST RFS_REQUEST_ACTIVE_TRIPS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT ACTIVE_TRIPS (RCS+)> <!ELEMENT RCS EMPTY> <!ATTLIST RCS name CDATA #REQUIRED>

Table 17 – Values for request for active trips

Parent Element Element Name Attribute Name Data Type

Size Values

Root <ACTIVE_TRIPS>

<ACTIVE_TRIPS> <RCS> name VarChar 50 Rcs name

7.2.1.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_ACTIVE_TRIPS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_ACTIVE_TRIPS.DTD"> <RFS_REQUEST_ACTIVE_TRIPS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES>

7.2.2 Response for active trips

The server returns all active trips within requested Rail Control Systems.

7.2.2.1 DTD

<!ELEMENT RFS_RESPONSE_ACTIVE_TRIPS (SESSION, RESPONSE_RESULT, RAIL_CONTROL_SYSTEMS ACTIVE_TRIPS)> <!ATTLIST RFS_RESPONSE_ACTIVE_TRIPS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)>

Page 36: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 36 of 102

<!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT RAIL_CONTROL_SYSTEMS (RAIL_CONTROL_SYSTEM*)> <!ELEMENT RAIL_CONTROL_SYSTEM EMPTY> <!ATTLIST RAIL_CONTROL_SYSTEM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED connection_status (CONNECTED|DISCONNECTED) #REQUIRED last_update CDATA #REQUIRED timeout CDATA # IMPLIED> <!ELEMENT ACTIVE_TRIPS (TRIPS_AT_LOCATION+)> <!ATTLIST ACTIVE_TRIPS time CDATA #IMPLIED> <!ELEMENT TRIPS_AT_LOCATION (TRIP+)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT TRIP (DESTINATION?, STOPS?, EXPECTED, SCHEDULED?, FORMS_TRIP?, FORMED_BY_TRIP?)> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED valid_trip (TRUE|FALSE) #IMPLIED

stock_num CDATA #IMPLIED>

<!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED departure CDATA #IMPLIED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #REQUIRED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT TRIP_STATUS_FLAGS EMPTY> <!ATTLIST TRIP_STATUS_FLAGS is_changed_status (TRUE | FALSE) #REQUIRED is_timetabled_trip (TRUE | FALSE) #REQUIRED is_timetabled_location (TRUE | FALSE) #REQUIRED is_cancelled_trip (TRUE | FALSE) #REQUIRED is_previous_day (TRUE | FALSE) #REQUIRED is_active (TRUE | FALSE) #REQUIRED is_has_run (TRUE | FALSE) #REQUIRED is_stop (TRUE | FALSE) #REQUIRED is_terminate (TRUE | FALSE) #REQUIRED is_edited (TRUE | FALSE) #REQUIRED is_original_location (TRUE | FALSE) #REQUIRED is_occupying (TRUE | FALSE) #REQUIRED>

Page 37: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 37 of 102

Table 18 – Values for response for active trips

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <RESSPONSE_ RESULT>

status Integer

4 0: Success Non-zero: See Appendix A.

Root < RAIL_CONTROL _SYSTEMS >

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> rcs Varchar

50 e.g. Sydney, Strathfield

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> entity_name Varchar

50 “rcs_status”

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> publish_type Varchar

50 “SystemStatus”

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> connection_status

Varchar

15 “CONNECTED” or “DISCONNECTED”

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> last_update Varchar

19 yyyy-mm-dd hh:mm:ss

<RAIL_CONTROL_SYSTEMS> <RAIL_CONTROL_SYSTEM> timeout Int 4 Timeout value in seconds.

Root <ACTIVE_TRIPS> time DateTime

19 yyyy-mm-dd hh:mm:ss (24 hours). Server time when it is sent.

<ACTIVE_TRIPS> <TRIPS_AT_ LOCATION>

rcs VarChar

50 e.g. Sydney, Strathfield

<ACTIVE_TRIPS> <TRIPS_AT_ LOCATION>

entity_name VarChar

50 Trip Location

<ACTIVE_TRIPS> <TRIPS_AT_ LOCATION>

publish_type VarChar

50 Publish Type

< TRIPS_AT_LOCATION > <TRIP> name VarChar

20 Trip Name

< TRIPS_AT_LOCATION > <TRIP> trip_instance Int 4 Instance number of a trip

< TRIPS_AT_LOCATION > <TRIP> status VarChar

20 Refer to DTD for valid values

< TRIPS_AT_LOCATION > <TRIP> certainty VarChar

20 Refer to Appendix C

< TRIPS_AT_LOCATION > <TRIP> cars Int 4 Number of cars

< TRIPS_AT_LOCATION > <TRIP> valid_trip Varchar

5 “TRUE” or “FALSE” (MetroNet only)

< TRIPS_AT_LOCATION > <TRIP> stock_num Varchar

6 Locomotive Stock Number (MetroNet only)

<TRIP> <DESTINATION> msgid Int 4 Destination Message Id (ATRICS only)

<DESTINATION> <STATION> id Int 4 Destination Station Id (ATRICS only)

<DESTINATION> <STATION> name VarChar

50 Destination Station name (ATRICS only)

Page 38: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Parent Element Element Name Attribute Name

Data Type

Size Values

<TRIP> <STOPS> msgid Int 4 Stopping Pattern Message Id (ATRICS only)

<STOPS> <STATION> id Int 4 Stopping Station id (ATRICS only)

<STOPS> <STATION> name VarChar

50 Stopping Station name (ATRICS only)

<TRIP> <EXPECTED> arrival DateTime

19 yyyy-mm-dd hh:mm:ss (24hours) ATRICS area: Actual time arrived at a location. TD area: Time stamp when TD bridge received

<TRIP> <EXPECTED> departure DateTime

19 yyyy-mm-dd hh:mm:ss (24 hours) (ATRICS only)

<TRIP> <SCHEDULED> arrival DateTime

19 yyyy-mm-dd hh:mm:ss (24 hours) (ATRICS only)

<TRIP> <SCHEDULED> departure DateTime

19 yyyy-mm-dd hh:mm:ss (24 hours) (ATRICS only)

< TRIP> <FORMS_TRIP> name VarChar

20 Forms-to-trip name at a destination station (ATRICS only)

< TRIP> <FORMS_TRIP> trip_instance Int 4 Forms-to-trip instance number (ATRICS only)

< TRIP> <FORMED_BY_ TRIP>

name VarChar

20 Formed-by-trip name (ATRICS only)

< TRIP> <FORMED_BY_ TRIP>

trip_instance Int 4 Formed-by-trip instance number (ATRICS only)

© State of NSW through Transport for NSW Page 38 of 102

7.2.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_ACTIVE_TRIPS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_ACTIVE_TRIPS.DTD"> <RFS_RESPONSE_ACTIVE_TRIPS version="1.1"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <RAIL_CONTROL_SYSTEMS>

Page 39: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 39 of 102

<RAIL_CONTROL_SYSTEM rcs="Sydney" entity_name="rcs_status" publish_type="SystemStatus" connection_status="CONNECTED" last_update="2000-06-30 13:10:32"/>

<RAIL_CONTROL_SYSTEM rcs="Strathfield" entity_name="rcs_status" publish_type="SystemStatus" connection_status="CONNECTED" last_update="2000-06-30 13:13:42"/>

</RAIL_CONTROL_SYSTEMS> <ACTIVE_TRIPS time="2000-06-30 17:14:02"> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="0529" publish_type="OccupyingTrips"> <TRIP name="3--K" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="54"> <STATION id="13" name="Central"/> </DESTINATION> <STOPS msgid="1104">

<STATION id="13" name="CENTRAL"/> <STATION id="14" name="TOWN HALL"/> <STATION id="15" name="WYNYARD"/> <STATION id="16" name="CIRCULAR QUAY"/> <STATION id="17" name="ST JAMES"/> <STATION id="18" name="MUSEUM"/> <STATION id="13" name="CENTRAL"/>

</STOPS> <EXPECTED arrival="2000-06-30 17:32:54"/> </TRIP> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="A744" publish_type="OccupyingTrips"> <TRIP name="61--C" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="34"> <STATION id="8" name="MUSEUM"/> </DESTINATION>

<STOPS msgid="1154"> <STATION id="813" name="WOLLI CREEK"/> <STATION id="812" name="INTERNATIONAL"/> <STATION id="811" name="DOMESTIC"/> <STATION id="810" name="MASCOT"/> <STATION id="809" name="GREEN SQUARE"/> <STATION id="7" name="CENTRAL"/> <STATION id="8" name="MUSEUM"/>

</STOPS> <EXPECTED arrival="2000-60-30 17:36:22"/> </TRIP> </TRIPS_AT_LOCATION> </ACTIVE_TRIPS> </RFS_RESPONSE_ACTIVE_TRIPS>

7.3 Trips at locations

7.3.1 Objectives

It provides a facility to identify the occupying trips at single or multiple locations.

7.3.2 Request for trips at locations

7.3.2.1 DTD

<!ELEMENT RFS_REQUEST_TRIPS_AT_LOCATIONS (SESSION, TRIPS_AT_LOCATIONS)> <!ATTLIST RFS_REQUEST_TRIPS_AT_LOCATIONS version (1.0|1.1|1.2) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT TRIPS_AT_LOCATIONS (LOCATION+)> <!ELEMENT LOCATION EMPTY> <!ATTLIST LOCATION name CDATA #IMPLIED rcs CDATA #REQUIRED>

Page 40: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 40 of 102

Table 19 – Values for rquest for trips at locations

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <TRIPS_AT_LOCATIONS> status Integer 4 0 or non-zero. Refer to Appendix A.

<TRIPS_AT_LOCATIONS> <LOCATION> name VarChar 50 Optional Location Name. All RCS if not specified. For example, <LOCATION rcs="Sydney"/>

<TRIPS_AT_LOCATIONS> <LOCATION> rcs VarChar 50 e.g. Sydney, Strathfield

7.3.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_TRIPS_AT_LOCATIONS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_TRIPS_AT_LOCATIONS.DTD"> <RFS_REQUEST_TRIPS_AT_LOCATIONS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <TRIPS_AT_LOCATIONS> <LOCATION name="A744" rcs="Sydney"/> <LOCATION name="0529" rcs="Sydney"/> <LOCATION name="0395" rcs="Strathfield"/> </TRIPS_AT_LOCATIONS> </RFS_REQUEST_TRIPS_AT_LOCATIONS>

7.3.3 Response for trips at locations

This RailForm is used to return occupying trips of each location requested.

7.3.3.1 DTD

<!ELEMENT RFS_RESPONSE_TRIPS_AT_LOCATIONS (SESSION, RESPONSE_RESULT, RAIL_CONTROL_SYSTEMS, ACTIVE_TRIP+)> <!ATTLIST RFS_RESPONSE_TRIPS_AT_LOCATIONS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT TRIPS_AT_LOCATIONS (ACTIVE_TRIP+)> <!ELEMENT TRIPS_AT_LOCATION (TRIP+)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED>

Page 41: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 41 of 102

<!ELEMENT TRIP (DESTINATION?, STOPS?, EXPECTED, SCHEDULED?, FORMS_TRIP?, FORMED_BY_TRIP?)> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED valid_trip (TRUE|FALSE) #IMPLIED stock_num CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED departure CDATA #IMPLIED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #REQUIRED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT TRIP_STATUS_FLAGS EMPTY> <!ATTLIST TRIP_STATUS_FLAGS is_changed_status (TRUE | FALSE) #REQUIRED is_timetabled_trip (TRUE | FALSE) #REQUIRED is_timetabled_location (TRUE | FALSE) #REQUIRED is_cancelled_trip (TRUE | FALSE) #REQUIRED is_previous_day (TRUE | FALSE) #REQUIRED is_active (TRUE | FALSE) #REQUIRED is_has_run (TRUE | FALSE) #REQUIRED is_stop (TRUE | FALSE) #REQUIRED is_terminate (TRUE | FALSE) #REQUIRED is_edited (TRUE | FALSE) #REQUIRED is_original_location (TRUE | FALSE) #REQUIRED is_occupying (TRUE | FALSE) #REQUIRED>

Table 20 – Values for rsponse for trips at locations

Parent Element Element Name Attribute Name

Data Type

Size Values

<TRIPS_AT_LOCATIONS>

<TRIPS_AT_LOCATION> Rcs VarChar 50 e.g. Sydney, Strathfield

<TRIS_AT_LOCATIONS> <TRIPS_AT_LOCATION> entity_name VarChar 50 Trip Location

<TRIPS_AT_LOCATIONS>

<TRIPS_AT_LOCATION> publish_type VarChar 50 Publish Type

<TRIPS_AT_LOCATION > <TRIP> name VarChar 20 Trip Name

<TRIPS_AT_LOCATION > <TRIP> trip_instance Int 4 Instance number of a trip

<TRIPS_AT_LOCATION > <TRIP> status VarChar 20 Refer to DTD for valid values

<TRIPS_AT_LOCATION > <TRIP> certainty VarChar 20 Refer to Appendix C

<TRIPS_AT_LOCATION > <TRIP> cars Int 4 Number of cars

Page 42: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 42 of 102

Parent Element Element Name Attribute Name

Data Type

Size Values

<TRIPS_AT_LOCATION > <TRIP> valid_trip Varchar 5 “TRUE” or “FALSE” (MetroNet Only)

<TRIPS_AT_LOCATION > <TRIP> stock_num Varchar 6 Locomotive Stock Number (MetroNet only)

<TRIP> <DESTINATION> msgid Int 4 Destination Message Id (ATRICS only)

<DESTINATION> <STATION> id Int 4 Destination Station Id (ATRICS only)

<DESTINATION> <STATION> name VarChar 50 Destination Station name (ATRICS only)

<TRIP> <STOPS> msgid Int 4 Stopping Pattern Message Id (ATRICS only)

<STOPS> <STATION> id Int 4 Stopping Station id (ATRICS only)

<STOPS> <STATION> name VarChar 50 Stopping Station name (ATRICS only)

<TRIP> <EXPECTED> arrival DateTime 19 yyyy-mm-dd hh:mm:ss ATRICS area: Actual time arrived at a location. TD area: Time stamp when TD bridge received

<TRIP> <EXPECTED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <SCHEDULED> arrival DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <SCHEDULED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <FORMS_TRIP> name VarChar 20 Forms-to-trip name at a destination station (ATRICS only)

<TRIP> <FORMS_TRIP> trip_instance Int 4 Forms-to-trip instance number (ATRICS only)

<TRIP > <FORMED_BY_TRIP> name VarChar 20 Formed-by-trip name (ATRICS only)

<TRIP > <FORMED_BY_TRIP> trip_instance Int 4 Formed-by-trip instance number (ATRICS only)

7.3.3.2 Sample XML

<?xml version="1.0"?>

Page 43: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 43 of 102

<!DOCTYPE RFS_RESPONSE_TRIPS_AT_LOCATIONS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_TRIPS_AT_LOCATIONS.DTD"> <RFS_RESPONSE_TRIPS_AT_LOCATIONS version="1.2"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <TRIPS_AT_LOCATIONS> <TRIPS_AT_LOCATION rcs="Strathfield" entity_name="0395" publish_type="OccupyingTrips"> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="0529" publish_type="OccupyingTrips"> <TRIP name="3--K" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="54"> <STATION id="12" name="Central"/> </DESTINATION> <STOPS msgid="23"> <STATION id="12" name="Strathfield"/> <STATION id="23" name="Burwood"/> <STATION id="34" name="Redfern"/> </STOPS> <EXPECTED arrival="2000-60-30 17:32:54"/> </TRIP> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="A744" publish_type="OccupyingTrips"> <TRIP name="61--C" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="34"> <STATION id="34" name="North Sydney"/> </DESTINATION> <STOPS msgid="32"> <STATION id="12" name="Central"/> <STATION id="28" name="Town Hall"/> <STATION id="32" name="Wynyard"/> <STATION id="33" name="Milsons Point"/> <STATION id="34" name="North Sydney"/> </STOPS> <EXPECTED arrival="2000-60-30 17:36:22"/> </TRIP> </TRIPS_AT_LOCATION> </TRIPS_AT_LOCATIONS> </RFS_RESPONSE_TRIPS_AT_LOCATIONS>

7.4 Find trips

7.4.1 Objectives

It provides a facility to inquire as to the location of trip or trips within all locations known to the server. It is equivalent to existing “FD” ATR Terminal command.

7.4.2 Request for find trips

This RailForm is used to find specific trips.

7.4.2.1 DTD

<!ELEMENT RFS_REQUEST_FIND_TRIPS (SESSION, FIND_TRIPS)> <!ATTLIST RFS_REQUEST_FIND_TRIPS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)>

Page 44: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 44 of 102

<!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT FIND_TRIPS (ACTIVE_TRIP+)> <!ELEMENT ACTIVE_TRIP (#PCDATA)> <!ATTLIST ACTIVE_TRIP name CDATA #REQUIRED>

Table 21 – Values for request for find trips

Parent Element Element Name Attribute Name

Data Type Size Values

Root <FIND_TRIPS>

<FIND_TRIPS> <TRIP> name VarChar 20 Trip Name

7.4.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_FIND_TRIPS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_FIND_TRIPS.DTD"> <RFS_REQUEST_FIND_TRIPS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <FIND_TRIPS> <TRIP name="0529"/> <TRIP name="A744"/> </FIND_TRIPS> </RFS_REQUEST_FIND_TRIPS>

7.4.3 Response for find trips

The server returns Trips Locations grouped by RCS for requested Trip names.

7.4.3.1 DTD

<!ELEMENT RFS_RESPONSE_FIND_TRIPS (SESSION, RESPONSE_RESULT, FIND_TRIPS)>

<!ATTLIST RFS_RESPONSE_FIND_TRIPS version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Page 45: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 45 of 102

<!ELEMENT FIND_TRIPS (TRIPS_AT_LOCATION+)> <!ELEMENT TRIPS_AT_LOCATION (TRIP+)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT TRIP (DESTINATION?, STOPS?, EXPECTED, SCHEDULED?, FORMS_TRIP?, FORMED_BY_TRIP?)> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED valid_trip (TRUE|FALSE) #IMPLIED stock_num CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED departure CDATA #IMPLIED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #REQUIRED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT TRIP_STATUS_FLAGS EMPTY> <!ATTLIST TRIP_STATUS_FLAGS is_changed_status (TRUE | FALSE) #REQUIRED is_timetabled_trip (TRUE | FALSE) #REQUIRED is_timetabled_location (TRUE | FALSE) #REQUIRED is_cancelled_trip (TRUE | FALSE) #REQUIRED is_previous_day (TRUE | FALSE) #REQUIRED is_active (TRUE | FALSE) #REQUIRED is_has_run (TRUE | FALSE) #REQUIRED is_stop (TRUE | FALSE) #REQUIRED is_terminate (TRUE | FALSE) #REQUIRED is_edited (TRUE | FALSE) #REQUIRED is_original_location (TRUE | FALSE) #REQUIRED is_occupying (TRUE | FALSE) #REQUIRED>

Table 22 – Values for response for find trips

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <FIND_TRIPS>

<FIND_TRIPS> <TRIPS_AT_LOCATION> rcs VarChar 50 e.g. Sydney, Strathfield

<FIND_TRIPS> <TRIPS_AT_LOCATION> entity_name VarChar 50 Trip Location

<FIND_TRIPS> <TRIPS_AT_LOCATION> publish_type VarChar 50 Publish Type

<TRIPS_AT_LOCATION> <TRIP> name VarChar 20 Trip Name

<TRIPS_AT_LOCATION> <TRIP> trip_instance Int 4 Instance number of a trip

<TRIPS_AT_LOCATION> <TRIP> status VarChar 20 Refer to DTD for valid values

<TRIPS_AT_LOCATION> <TRIP> certainty VarChar 20 Refer to Appendix C

<TRIPS_AT_LOCATION> <TRIP> cars Int 4 Number of cars

Page 46: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Parent Element Element Name Attribute Name

Data Type

Size Values

<TRIPS_AT_LOCATION> <TRIP> valid_trip varchar 5 “TRUE” or “FALSE” (MetroNet only)

<TRIPS_AT_LOCATION> <TRIP> stock_num varchar 6 Locomotive Stock Number (MetroNet only)

<TRIP> <DESTINATION> msgid Int 4 Destination Message Id (ATRICS only)

<DESTINATION> <STATION> id Int 4 Destination Station Id (ATRICS only)

<DESTINATION> <STATION> name VarChar 50 Destination Station name (ATRICS only)

<TRIP> <STOPS> msgid Int 4 Stopping Pattern Message Id (ATRICS only)

<STOPS> <STATION> id Int 4 Stopping Station id (ATRICS only)

<STOPS> <STATION> name VarChar 50 Stopping Station name (ATRICS only)

<TRIP> <EXPECTED> arrival DateTime 19 yyyy-mm-dd hh:mm:ssATRICS area:

Actual time arrived at a location. TD area: Time stamp when TD bridge received

<TRIP> <EXPECTED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <SCHEDULED> arrival DateTime 19 yyyy-mm-dd hh:mm:ss(ATRICS only)

<TRIP> <SCHEDULED> departure DateTime 19 yyyy-mm-dd hh:mm:ss (ATRICS only)

<TRIP> <FORMS_TRIP> name VarChar 20 Forms-to-trip name at a destination station (ATRICS only)

<TRIP> <FORMS_TRIP> trip_instance Int 4 Forms-to-trip instance number (ATRICS only)

<TRIP> <FORMED_BY_TRIP> name VarChar 20 Formed-by-trip name (ATRICS only)

<TRIP> <FORMED_BY_TRIP> trip_instance Int 4 Formed-by-trip instance number (ATRICS only)

© State of NSW through Transport for NSW Page 46 of 102

7.4.3.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_FIND_TRIPS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_FIND_TRIPS.DTD"> <RFS_RESPONSE_FIND_TRIPS version="1.1"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE>

Page 47: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 47 of 102

<VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION>

<RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <FIND_TRIPS> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="0529" publish_type="ActiveTrip"> <TRIP name="3--K" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="54"> <STATION id="13" name="Central"/> </DESTINATION> <STOPS msgid="1104">

<STATION id="13" name="CENTRAL"/> <STATION id="14" name="TOWN HALL"/> <STATION id="15" name="WYNYARD"/> <STATION id="16" name="CIRCULAR QUAY"/> <STATION id="17" name="ST JAMES"/> <STATION id="18" name="MUSEUM"/> <STATION id="13" name="CENTRAL"/>

</STOPS> <EXPECTED arrival="2000-60-30 17:32:54"/> </TRIP> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="A744" publish_type="ActiveTrip"> <TRIP name="61--C" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="34"> <STATION id="8" name="MUSEUM"/> </DESTINATION>

<STOPS msgid="1154"> <STATION id="813" name="WOLLI CREEK"/> <STATION id="812" name="INTERNATIONAL"/> <STATION id="811" name="DOMESTIC"/> <STATION id="810" name="MASCOT"/> <STATION id="809" name="GREEN SQUARE"/> <STATION id="7" name="CENTRAL"/> <STATION id="8" name="MUSEUM"/>

</STOPS> <EXPECTED arrival="2000-60-30 17:36:22"/> </TRIP> </TRIPS_AT_LOCATION> </FIND_TRIPS> </RFS_RESPONSE_FIND_TRIPS>

7.5 Net report

7.5.1 Request for net report

This RailForm is used to request next 8 trips arriving at specified Nodes.

7.5.1.1 DTD

<!ELEMENT RFS_REQUEST_NETREPORT (SESSION, NETREPORT)> <!ATTLIST RFS_REQUEST_NETREPORT version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+) <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT NETREPORT (NODE|PROFILE)+> <!ELEMENT NODE EMPTY> <!ATTLIST NODE name CDATA #REQUIRED> <!ELEMENT PROFILE EMPTY> <!ATTLIST PROFILE name CDATA #REQUIRED>

Page 48: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 48 of 102

Table 23 – Values for request for net report

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <NETREPORT>

<NETREPORT> <NODE> name VarChar 10 Node Name

<NETREPORT> <PROFILE> name VarChar 50 Profile Name

7.5.1.2 Sample XML

<?xml version="1.0"?>

<!DOCTYPE RFS_REQUEST_NETREPORT SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_NETREPORT.DTD"> <RFS_REQUEST_NETREPORT version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <NETREPORT> <NODE name="BJN1"/> <PROFILE name="SPI15_SydneyNetReports"/> </NETREPORT> </RFS_REQUEST_NETREPORT>

7.5.2 Response for net report

The server reports next 8 trips arriving at requested nodes.

7.5.2.1 DTD

<!ELEMENT RFS_RESPONSE_NETREPORT (SESSION, RESPONSE_RESULT, NETREPORT+)> <!ATTLIST RFS_RESPONSE_NETREPORT version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT NETREPORT (TRIP)*> <!ATTLIST NETREPORT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED location CDATA #REQUIRED platform CDATA #REQUIRED> <!ELEMENT TRIP (DESTINATION, STOPS, EXPECTED,SCHEDULED)> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED>

Page 49: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 49 of 102

<!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED>

<!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED departure CDATA #REQUIRED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED departure CDATA #REQUIRED>

Page 50: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 50 of 102

Table 24 – Values for response for net report

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <NETREPORT>

Root <NETREPORT> Rcs VarChar 50 Rcs Name. E.g. Sydney

Root <NETREPORT> entity_name VarChar 50 Node name

Root <NETREPORT> publish_type VarChar 50 “NetReports”

Root <NETREPORT> location VarChar 50 Station name. E.g. Bondi Junction, Ashfield

Root <NETREPORT> platform VarChar 10 Platform number E.g. #1, #2

<NETREPORT> <TRIP> name VarChar 20 Trip name

<NETREPORT> <TRIP> trip_instance VarChar 20 Instance number of a trip

<NETREPORT> <TRIP> status VarChar 20 Refer to DTD for valid values

<NETREPORT> <TRIP> certainty VarChar 20 Refer to Appendix C

<NETREPORT> <TRIP> cars Int 2 Number of Cars

<TRIP> <DESTINATION> msgid Int 4 Destination AV Message Id

<DESTINATION> <STATION> id Int 4 Destination Station Id

<DESTINATION> <STATION> name VarChar 50 Destination Station name

<TRIP> <STOPS> msgid Int 4

Stopping Pattern AV Message Id

<STOPS> <STATION> id Int 4 Stopping Station id

<STOPS> <STATION> name VarChar 50 Stopping Station name

<TRIP> <EXPECTED> arrival Time 19 yyyy-mm-dd hh:mm:ss

<TRIP> <EXPECTED> departure Time 19 yyyy-mm-dd hh:mm:ss

<TRIP> <SCHEDULED> departure Time 19 yyyy-mm-dd hh:mm:ss

7.5.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_NETREPORT SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_NETREPORT.DTD"> <RFS_RESPONSE_NETREPORT version="1.2"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <NETREPORT rcs="Sydney" entity_name="BJN1" publish_type="NetReports" location="Bondi Junction" platform="#1"> <TRIP name="12-F" trip_instance="1" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="328"> <STATION id="50" name="CRONULLA"/>

Page 51: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 51 of 102

</DESTINATION> <STOPS msgid="2504"> <STATION id="3" name="EDGECLIFF"/> <STATION id="4" name="KINGS CROSS"/> <STATION id="5" name="MARTIN PLACE"/> <STATION id="14" name="TOWN HALL"/> <STATION id="13" name="CENTRAL"/> <STATION id="19" name="REDFERN"/> <STATION id="47" name="MIRANDA"/> <STATION id="50" name="CRONULLA"/> </STOPS> <EXPECTED arrival="2000-12-08 18:30:16" departure="2000-12-08 18:31:16"/> <SCHEDULED departure="2000-12-08 09:30:00"/> </TRIP> <TRIP name="108D" trip_instance="1" status="STOP" certainty="TIMETABLED" cars="6"> <DESTINATION msgid="328"> <STATION id="50" name="CRONULLA"/> </DESTINATION> <STOPS msgid="2352"> <STATION id="3" name="EDGECLIFF"/> <STATION id="4" name="KINGS CROSS"/> <STATION id="5" name="MARTIN PLACE"/> <STATION id="14" name="TOWN HALL"/> <STATION id="13" name="CENTRAL"/> <STATION id="19" name="REDFERN"/> <STATION id="23" name="SYDENHAM"/> <STATION id="27" name="TEMPE"/> <STATION id="49" name="WOOLOOWARE"/> <STATION id="50" name="CRONULLA"/> </STOPS> <EXPECTED arrival="2000-12-08 09:40:00" departure="2000-12-08 18:33:16"/> <SCHEDULED departure="2000-12-08 09:40:00"/> </TRIP> <TRIP name="5--E" trip_instance="1" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="330"> <STATION id="58" name="WATERFALL"/> </DESTINATION> <STOPS msgid="3374"> <STATION id="3" name="EDGECLIFF"/> <STATION id="4" name="KINGS CROSS"/> <STATION id="5" name="MARTIN PLACE"/> <STATION id="14" name="TOWN HALL"/> <STATION id="13" name="CENTRAL"/> <STATION id="19" name="REDFERN"/> <STATION id="23" name="SYDENHAM"/> <STATION id="43" name="SUTHERLAND"/> <STATION id="57" name="HEATHCOTE"/> <STATION id="58" name="WATERFALL"/> </STOPS> <EXPECTED arrival="2000-12-08 09:50:00" departure="2000-12-08 18:35:16"/> <SCHEDULED departure="2000-12-08 09:50:00"/> </TRIP> <TRIP name="9--D" trip_instance="1" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="330"> <STATION id="58" name="WATERFALL"/> </DESTINATION> <STOPS msgid="3379"> <STATION id="3" name="EDGECLIFF"/> <STATION id="4" name="KINGS CROSS"/> <STATION id="5" name="MARTIN PLACE"/> <STATION id="14" name="TOWN HALL"/> <STATION id="13" name="CENTRAL"/> <STATION id="19" name="REDFERN"/> <STATION id="23" name="SYDENHAM"/> <STATION id="27" name="TEMPE"/> <STATION id="42" name="JANNALI"/> <STATION id="43" name="SUTHERLAND"/> <STATION id="53" name="LOFTUS"/> <STATION id="56" name="ENGADINE"/> <STATION id="57" name="HEATHCOTE"/> <STATION id="58" name="WATERFALL"/> </STOPS> <EXPECTED arrival="2000-12-08 10:00:00" departure="2000-12-08 18:37:16"/> <SCHEDULED departure="2000-12-08 10:00:00"/> </TRIP> <TRIP name="1--B" trip_instance="1" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="328"> <STATION id="50" name="CRONULLA"/> </DESTINATION> <STOPS msgid="3371"> <STATION id="3" name="EDGECLIFF"/> <STATION id="4" name="KINGS CROSS"/> <STATION id="5" name="MARTIN PLACE"/>

Page 52: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 52 of 102

<STATION id="14" name="TOWN HALL"/> <STATION id="13" name="CENTRAL"/> <STATION id="19" name="REDFERN"/> <STATION id="23" name="SYDENHAM"/> <STATION id="813" name="WOLLI CREEK"/> <STATION id="31" name="ROCKDALE"/> <STATION id="49" name="WOOLOOWARE"/> <STATION id="50" name="CRONULLA"/> </STOPS> <EXPECTED arrival="2000-12-08 10:28:16" departure="2000-12-08 10:28:16"/> <SCHEDULED arrival="2000-12-08 10:27:00" departure="10:28:00"/> </TRIP> </NETREPORT> </RFS_RESPONSE_NETREPORT>

8. Timetable

8.1 Objectives

It provides a facility to retrieve a timetable. The server publishes status of Timetable whenever

importing or loading a new timetable occurs so that the clients can decide whether they need to

download or load a new timetable.

Timetable can be loaded two different ways. The first one is based on Nodes only. The second

one is the complete Timetable.

8.2 Version

The version field will have two values:

Version in YYYY-MM-DD hh:mm:ss form

-1 which means that the version number is not applicable

All other values will not be used. If used the timetable will be assumed invalid

If two timetables with the same timetable_id are compared:

If both of them valid version number in YYYY-MM-DD hh:mm:ss form, the timetable,

which has later date and time, will be assumed the latest timetable. The comparison

operation will not use system or local time.

If one of the timetable has version -1 and other timetable has version in YYYY-MM-DD

hh:mm:ss form, the later one will be assumed the latest table.

8.3 Timetable status

8.3.1 Request for timetable status

This RailForm is used to request status of timetable at Rail Control Systems.

8.3.1.1 DTD

<!ELEMENT RFS_REQUEST_TIMETABLE_STATUS (SESSION, TIMETABLE_STATUS)> <!ATTLIST RFS_REQUEST_TIMETABLE_STATUS version (1.0) #REQUIRED>

<!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID

Page 53: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 53 of 102

timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT TIMETABLE_STATUS (RCS)+> <!ELEMENT RCS (#PCDATA)> <!ATTLIST RCS date_loaded CDATA #IMPLIED>

Table 25 – Values for request for timetable status

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <TIMETABLE_STATUS>

<TIMETABLE_STATUS> <RCS> name VarChar 50 Rail Control System E.g. Sydney, Strathfield

<TIMETABLE_STATUS> <RCS> date_loaded date 10 Optional. yyyy-mm-dd. It is used to check timetable status at a specific date. Status of all timetables are included if no date requested.

8.3.1.2 Sample XML

This sample XML is requesting for status of all timetable for Sydney and status of the Strathfield

timetable for 18th of May 2001.

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_TIMETABLE_STATUS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_TIMETABLE_STATUS.DTD"> <RFS_REQUEST_TIMETABLE_STATUS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <TIMETABLE_STATUS> <RCS name="Sydney"/> <RCS name="Strathfield" date_loaded="2001-05-18"/> </TIMETABLE_STATUS> </RFS_REQUEST_TIMETABLE_STATUS>

8.3.2 Response for timetable status

It contains status of timetables for specified rail control systems in a 'Timetable Status' request

RailForm or 'Subscription' RailForm.

If the entity_name attribute's value is "loaded" then the valid_from attribute will contain the

date that is to be used as the date that the timetable is valid for this is regardless of the type

being DAILY or STANDARD. There will be only one "loaded" timetable for a given date.

Page 54: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

If the entity_name attribute's value is "unloaded" then the valid_from attribute will contain the

date that is to be used as the date that the timetable is valid for.

If the entity_name attribute's value is "imported" then the valid_from attribute contains the

date that is the start of a range of days and the valid_to attribute contains the date that is the

end of the range.

© State of NSW through Transport for NSW Page 54 of 102

8.3.2.1 DTD

<!ELEMENT RFS_RESPONSE_TIMETABLE_STATUS (SESSION, RESPONSE_RESULT, TIMETABLE_STATUS*)> <!ATTLIST RFS_RESPONSE_TIMETABLE_STATUS version (1.0) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT TIMETABLE_STATUS EMPTY> <!ATTLIST TIMETABLE_STATUS rcs CDATA #REQUIRED entity_name (IMPORTED|LOADED|UNLOADED) #REQUIRED publish_type CDATA #REQUIRED timetable_id CDATA #REQUIRED version CDATA #REQUIRED type (STANDARD|DAILY|NULL) #REQUIRED day (Sunday|Monday|Tuesday|Wednesday|Thursday|Friday| Saturday|PublicHoliday|NULL) #REQUIRED valid_from CDATA #REQUIRED valid_to CDATA #REQUIRED>

Page 55: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 55 of 102

Table 26 – Values for response for timetable status

Parent Element

Element Name Attribute Name

Data Type

Size Values

Root <TIMETABLE_STATUS> rcs VarChar 50 Rail Control System E.g. Sydney, Strathfield

Root <TIMETABLE_STATUS> entity_name VarChar 50 Load Status. IMPORTED, LOADED or UNLOADED

Root <TIMETABLE_STATUS> publish_type VarChar 50 TimetableStatus

Root <TIMETABLE_STATUS> timetable_id VarChar 100

Root <TIMETABLE_STATUS> version VarChar 20 see section 8.2

Root <TIMETABLE_STATUS> type VarChar 10 DAILY or STANDARD

Root <TIMETABLE_STATUS> day VarChar 15 “Sunday”, “Monday”, “Tuesday”, . , “Saturday”, “PublicHoliday”

Root <TIMETABLE_STATUS> valid_from DateTime 19 yyyy-mm-yy hh:mm:ss (24hours)

Root <TIMETABLE_STATUS> valid_to DateTime 19 yyyy-mm-yy hh:mm:ss (24hours)

8.3.2.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_TIMETABLE_STATUS SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_TIMETABLE_STATUS.DTD"> <RFS_RESPONSE_TIMETABLE_STATUS version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES>

<VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <TIMETABLE_STATUS rcs="Sydney" entity_name="LOADED" publish_type="TimetableStatus" timetable_id="D2808-SYD-DLY-MN-28-08-2000a" version="2014-03-12 12:45:32" type="DAILY" day="Monday" valid_from="2001-05-16 00:00:00" valid_to="2001-05-17 02:44:20"/> <TIMETABLE_STATUS rcs="Sydney" entity_name="IMPORTED" publish_type="TimetableStatus" timetable_id="D1805-SYD-DLY-FR-18-05-2001" version="-1" type="DAILY" day="Monday" valid_from="2001-05-18 00:00:00" valid_to="2001-12-31 23:59:59"/> <TIMETABLE_STATUS rcs="Sydney" entity_name="UNLOADED" publish_type="TimetableStatus" timetable_id="D1205-SYD-DLY-SA-12-05-2001" version="2014-03-15 10:05:12" type="DAILY" day="Monday" valid_from="2001-05-12 00:00:00" valid_to="2001-05-13 02:31:00"/> <TIMETABLE_STATUS rcs="Sydney" entity_name="UNLOADED" publish_type="TimetableStatus" timetable_id="D1405-SYD-DLY-MN-14-05-2001" version="-1" type="DAILY" day="Monday" valid_from="2001-05-14 00:00:00" valid_to="2001-05-15 03:01:00"/> <TIMETABLE_STATUS rcs="Sydney" entity_name="UNLOADED" publish_type="TimetableStatus" timetable_id="D2808-SYD-DLY-MN-28-08-2000a" version="2013-03-15 18:05:12" type="DAILY" day="Monday" valid_from="2001-05-15 00:00:00" valid_to="2001-05-16 02:31:00"/>

Page 56: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 56 of 102

<TIMETABLE_STATUS rcs="Strathfield" entity_name="LOADED" publish_type="TimetableStatus" timetable_id="STU13092000-STR-STD" version="-1" type="STANDARD" day="Tuesday" valid_from="2001-05-18 00:00:00" valid_to="2001-05-19 03:12:06"/> </RFS_RESPONSE_TIMETABLE_STATUS>

8.4 Timetable at node railform

8.4.1 Request for timetable at node

This RailForm is used to request a Timetable for specified Nodes.

8.4.1.1 DTD

<!ELEMENT RFS_REQUEST_TIMETABLE_AT_NODE (SESSION, TIMETABLE)> <!ATTLIST RFS_REQUEST_TIMETABLE_AT_NODE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT TIMETABLE_AT_NODE (NODE|PROFILE)+> <!ELEMENT NODE EMPTY> <!ATTLIST NODE name CDATA #REQUIRED date_loaded CDATA #IMPLIED timetable_id CDATA #IMPLIED timetable_version CDATA #IMPLI

Table 27 – Values for request for timetable at node

Parent Element Element Name Attribute Name Data Type

Size Values

Root <TIMETABLE_AT_NODE>

<TIMETABLE_AT_NODE> <NODE> name VarChar 10 Node Name (Optional) E.g. BJN1, ASF1

<TIMETABLE_AT_NODE> <NODE> date_loaded VarChar 10 Optional yyyy-mm-dd. For Loaded Timetable only.

<TIMETABLE_AT_NODE> <NODE> timetable_id VarChar 100 Optional for Imported Timetable only E.g. "SFR19102000-STR-STD"

<TIMETABLE_AT_NODE> <NODE> timetable_version Int 4 Optional for Imported Timetable only E.g. "-1"

Page 57: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 57 of 102

8.4.1.2 Sample XML

To request Imported Timetable, specify timetable_id and timetable_version with a Node

name but not date_loaded. To request Loaded Timetable, specify date_load with a Node

name. Following example shows how to request Imported Timetable.

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_TIMETABLE_AT_NODE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_TIMETABLE_AT_NODE.DTD"> <RFS_REQUEST_TIMETABLE_AT_NODE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> </SESSION> <TIMETABLE_AT_NODE>

<NODE name="CCQ1" timetable_id="D2410-SYD-DLY-MN-24-10-2001" timetable_version="-1"/>

</TIMETABLE_AT_NODE> </RFS_REQUEST_TIMETABLE_AT_LOCATION>

8.4.2 Response for timetable at node

It contains a timetable of a specified nodes in a Timetable request RailForm.

8.4.2.1 DTD

<!ELEMENT RFS_RESPONSE_TIMETABLE_AT_NODE (SESSION, RESPONSE_RESULT, AV_MESSAGES, AV_ITEMS, TIMETABLE_AT_NODE)> <!ATTLIST RFS_RESPONSE_TIMETABLE_AT_NODE version (2.1) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT AV_MESSAGES (AV_MESSAGE*)> <!ELEMENT AV_MESSAGE EMPTY> <!ATTLIST AV_MESSAGE id ID #REQUIRED type (D|S) #REQUIRED message IDREFS #IMPLIED> <!ELEMENT AV_ITEMS (STATION*)> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id ID #REQUIRED name CDATA #REQUIRED> <!ELEMENT TIMETABLE_AT_NODE (TRIP*)> <!ATTLIST TIMETABLE_AT_NODE rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED location CDATA #REQUIRED platform CDATA #REQUIRED timetable_id CDATA #REQUIRED version CDATA #REQUIRED type (NULL|STANDARD|DAILY) #REQUIRED day (Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday|PublicHoliday|NULL) #REQUIRED valid_from CDATA #REQUIRED valid_to CDATA #REQUIRED> <!ELEMENT TRIPS (TRIP*)> <!ELEMENT TRIP (SCHEDULED)> <!ATTLIST TRIP name CDATA #REQUIRED status (SPECIAL|PASS|STOP|TERMINATE) "SPECIAL"

Page 58: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 58 of 102

cars CDATA #REQUIRED destination IDREFS #REQUIRED stops IDREFS #REQUIRED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #REQUIRED>

Table 28 – Values for response for timetable at node

Parent Element Element Name Attribute Name

Data Type Size Values

Root <AV_MESSAGES>

<AV_MESSAGES> <AV_MESSAGE> id varChar 8

<AV_MESSAGES> <AV_MESASGE> type varChar 1

Message type (D: Destination, S: Stops)

<AV_MESSAGES> <AV_MESSAGE> message varchar 800

Reference to Av Item Id. Destination (type=D) or Stopping pattern (type=S)

Root <AV_ITEMS>

<AV_ITEMS> <STATION> id varChar 8 Station Id (e.g. "avi50")

<AV_ITEMS> <STATION> Name VarChar 50 Station name

Root <TIMETABLE_AT_NODE> Rcs VarChar 50

e.g. Sydney, Strathfield

Root <TIMETABLE_AT_NODE> entity_name VarChar 50 Node name

Root <TIMETABLE_AT_NODE> publish_type VarChar 50 TimetableAtNode

Root <TIMETABLE_AT_NODE> location VarChar 50

Station Name E.g. Central, Ashfield

Root <TIMETABLE_AT_NODE> platform VarChar 10

Platform Number E.g. #1, #2

Root <TIMETABLE_AT_NODE> timetable_id VarChar 100

Timetable source filename

Root <TIMETABLE_AT_NODE> version Int 8

Timetable version number (1 – n)

Root <TIMETABLE_AT_NODE> type VarChar 10

“DAILY”, “STANDARD” or “NULL”

Root <TIMETABLE_AT_NODE> day VarChar

15

“Sunday”, “Monday”, “Tuesday”, . , “Saturday”, “PublicHoliday, NULL”

Root <TIMETABLE_AT_NODE> valid_from DateTime 19 yyyy-mm-dd hh:mm:ss

Root <TIMETABLE_ AT_NODE>

valid_to DateTime 19 yyyy-mm-dd hh:mm:ss

<TIMETABLE_AT_NODE> <TRIP> name VarChar 20 Trip name

<TIMETABLE_AT_NODE> <TRIP> status VarChar 15

Refer to DTD for valid values

<TIMETABLE_AT_NODE> <TRIP> cars Int 4 Number of cars

<TIMETABLE_AT_NODE> <TRIP> destination varchar 8

Destination AV Message Id (e.g. avm328)

Page 59: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Parent Element Element Name Attribute Name

Data Type Size Values

<TIMETABLE_AT_NODE> <TRIP> stops varchar 8

Stopping pattern AV Message Id (e.g. avm58)

<TRIP> <SCHEDULED> arrival Time hh:mm:ss

8 (00:00:00 - 47:59:59) Date offset from midnight of valid_from.

<TRIP> <SCHEDULED> departure Time

8

hh:mm:ss (00:00:00 - 47:59:59) Date offset from midnight of valid_from.

© State of NSW through Transport for NSW Page 59 of 102

8.4.2.2 XML Sample

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_TIMETABLE_AT_NODE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_TIMETABLE_AT_NODE.DTD"> <RFS_RESPONSE_TIMETABLE_AT_NODE version="2.1"> <SESSION> <SESSION_ID timeout="20">3A0C696150A148539384951D72A43A70</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <AV_MESSAGES> <AV_MESSAGE id="avm328" type="D" message="avi50"/> <AV_MESSAGE id="avm330" type="D" message="avi58"/> <AV_MESSAGE id="avm331" type="D" message="avi35"/> <AV_MESSAGE id="avm340" type="D" message="avi92"/> <AV_MESSAGE id="avm342" type="D" message="avi199"/> <AV_MESSAGE id="avm344" type="D" message="avi174"/> <AV_MESSAGE id="avm373" type="D" message="avi40"/> <AV_MESSAGE id="avm375" type="D" message="avi99"/> <AV_MESSAGE id="avm58" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi31 avi32 avi35 avi37 avi38 avi40 avi41 avi42 avi43 avi45 avi46 avi47 avi48 avi49 avi50"/> <AV_MESSAGE id="avm60" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi31 avi32 avi35 avi38 avi42 avi43 avi45 avi46 avi47 avi48 avi49 avi50"/> <AV_MESSAGE id="avm64" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi31 avi32 avi35 avi37 avi42 avi43 avi45 avi46 avi47 avi48 avi49 avi50"/> <AV_MESSAGE id="avm73" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi31 avi32 avi35 avi37 avi38 avi40 avi41 avi42 avi43 avi53 avi56 avi57 avi58"/> <AV_MESSAGE id="avm74" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi31 avi32 avi35 avi37 avi38 avi42 avi43 avi53 avi56 avi57 avi58"/> <AV_MESSAGE id="avm183" type="S" message="avi7 avi8 avi9 avi10 avi11 avi12 avi177 avi178 avi179 avi180 avi181"/> <AV_MESSAGE id="avm1786" type="S" message="avi7 avi8 avi9 avi10 avi11 avi12 avi13 avi19 avi104 avi105 avi106 avi107 avi108 avi109 avi110 avi111 avi112 avi113 avi115 avi116 avi117"/> <AV_MESSAGE id="avm2735" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi813 avi29 avi30 avi31 avi32 avi33 avi34 avi35"/> <AV_MESSAGE id="avm2977" type="S" message="avi7 avi8 avi9 avi10 avi11 avi12 avi13 avi19 avi110 avi113 avi117 avi119 avi120 avi182 avi123 avi167 avi168 avi169 avi170 avi171 avi172 avi173 avi174"/> <AV_MESSAGE id="avm3043" type="S" message="avi7 avi8 avi9 avi10 avi11 avi12 avi13 avi19 avi110 avi113 avi117 avi119 avi120 avi123 avi167 avi168 avi169 avi170 avi171 avi172 avi173 avi174 avi192 avi193 avi194 avi195 avi196 avi197 avi198 avi199"/> <AV_MESSAGE id="avm3205" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi27 avi813 avi29 avi30 avi31 avi32 avi33 avi34 avi35 avi37 avi38 avi40"/> <AV_MESSAGE id="avm3356" type="S" message="avi7 avi8 avi9 avi10 avi11 avi12 avi13 avi19 avi110 avi113 avi117 avi177 avi178 avi182 avi183 avi184 avi185 avi186 avi187 avi188 avi189 avi192 avi193 avi194 avi195 avi196 avi197 avi198 avi199"/> <AV_MESSAGE id="avm3371" type="S" message="avi3 avi4 avi5 avi14 avi13 avi19 avi23 avi813

Page 60: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 60 of 102

avi31 avi32 avi35 avi37 avi38 avi42 avi43 avi45 avi46 avi47 avi48 avi49 avi50"/> </AV_MESSAGES> <AV_ITEMS> <STATION id="avi3" name="EDGECLIFF"/> <STATION id="avi4" name="KINGS CROSS"/> <STATION id="avi5" name="MARTIN PLACE"/> <STATION id="avi7" name="CENTRAL"/> <STATION id="avi8" name="MUSEUM"/> <STATION id="avi9" name="ST JAMES"/> <STATION id="avi10" name="CIRCULAR QUAY"/> <STATION id="avi11" name="WYNYARD"/> <STATION id="avi12" name="TOWN HALL"/> <STATION id="avi13" name="CENTRAL"/> <STATION id="avi14" name="TOWN HALL"/> <STATION id="avi19" name="REDFERN"/> <STATION id="avi23" name="SYDENHAM"/> <STATION id="avi27" name="TEMPE"/> <STATION id="avi29" name="ARNCLIFFE"/> <STATION id="avi30" name="BANKSIA"/> <STATION id="avi31" name="ROCKDALE"/> <STATION id="avi32" name="KOGARAH"/> <STATION id="avi33" name="CARLTON"/> <STATION id="avi34" name="ALLAWAH"/> <STATION id="avi35" name="HURSTVILLE"/> <STATION id="avi37" name="PENSHURST"/> <STATION id="avi38" name="MORTDALE"/> <STATION id="avi40" name="OATLEY"/> <STATION id="avi41" name="COMO"/> <STATION id="avi42" name="JANNALI"/> <STATION id="avi43" name="SUTHERLAND"/> <STATION id="avi45" name="KIRRAWEE"/> <STATION id="avi46" name="GYMEA"/> <STATION id="avi47" name="MIRANDA"/> <STATION id="avi48" name="CARINGBAH"/> <STATION id="avi49" name="WOOLOOWARE"/> <STATION id="avi50" name="CRONULLA"/> <STATION id="avi53" name="LOFTUS"/> <STATION id="avi56" name="ENGADINE"/> <STATION id="avi57" name="HEATHCOTE"/> <STATION id="avi58" name="WATERFALL"/> <STATION id="avi92" name="BANKSTOWN"/> <STATION id="avi99" name="LIDCOMBE"/> <STATION id="avi104" name="MACDONALDTOWN"/> <STATION id="avi105" name="NEWTOWN"/> <STATION id="avi106" name="STANMORE"/> <STATION id="avi107" name="PETERSHAM"/> <STATION id="avi108" name="LEWISHAM"/> <STATION id="avi109" name="SUMMER HILL"/> <STATION id="avi110" name="ASHFIELD"/> <STATION id="avi111" name="CROYDON"/> <STATION id="avi112" name="BURWOOD"/> <STATION id="avi113" name="STRATHFIELD"/> <STATION id="avi115" name="HOMEBUSH"/> <STATION id="avi116" name="FLEMINGTON"/> <STATION id="avi117" name="LIDCOMBE"/> <STATION id="avi119" name="AUBURN"/> <STATION id="avi120" name="CLYDE"/> <STATION id="avi123" name="GRANVILLE"/> <STATION id="avi167" name="MERRYLANDS"/> <STATION id="avi168" name="GUILDFORD"/> <STATION id="avi169" name="YENNORA"/> <STATION id="avi170" name="FAIRFIELD"/> <STATION id="avi171" name="CANLEY VALE"/> <STATION id="avi172" name="CABRAMATTA"/> <STATION id="avi173" name="WARWICK FARM"/> <STATION id="avi174" name="LIVERPOOL"/> <STATION id="avi177" name="BERALA"/> <STATION id="avi178" name="REGENTS PARK"/> <STATION id="avi179" name="BIRRONG"/> <STATION id="avi180" name="YAGOONA"/> <STATION id="avi181" name="BANKSTOWN"/> <STATION id="avi182" name="SEFTON"/> <STATION id="avi183" name="CHESTER HILL"/> <STATION id="avi184" name="LEIGHTONFIELD"/> <STATION id="avi185" name="VILLAWOOD"/> <STATION id="avi186" name="CARRAMAR"/> <STATION id="avi187" name="CABRAMATTA"/> <STATION id="avi188" name="WARWICK FARM"/> <STATION id="avi189" name="LIVERPOOL"/> <STATION id="avi192" name="CASULA"/> <STATION id="avi193" name="GLENFIELD"/> <STATION id="avi194" name="MACQUARIE FIELDS"/> <STATION id="avi195" name="INGLEBURN"/> <STATION id="avi196" name="MINTO"/> <STATION id="avi197" name="LEUMEAH"/> <STATION id="avi198" name="CAMPBELLTOWN"/>

Page 61: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 61 of 102

<STATION id="avi199" name="MACARTHUR"/> <STATION id="avi813" name="WOLLI CREEK"/> </AV_ITEMS> <TIMETABLE_AT_NODE rcs="Sydney" entity_name="CCQ1" publish_type="TimetableAtNode" location="Circular Quay" platform="#CTI" timetable_id="D2808-SYD-DLY-MN-28-08-2000a" version="-1" type="DAILY" day="Monday" valid_from="2001-05-14 00:00:00" valid_to="2001-05-15 02:31:00"> <TRIP name="58-B" status="STOP" cars="8" destination="avm340" stops="avm183"> <SCHEDULED arrival="04:51:00" departure="04:51:00"/> </TRIP> <TRIP name="59-B" status="STOP" cars="8" destination="avm342" stops="avm3356"> <SCHEDULED arrival="04:59:00" departure="04:59:00"/> </TRIP> <TRIP name="32-D" status="STOP" cars="8" destination="avm340" stops="avm183"> <SCHEDULED arrival="05:06:00" departure="05:06:00"/> </TRIP> <TRIP name="47-B" status="STOP" cars="8" destination="avm342" stops="avm3043"> <SCHEDULED arrival="05:13:00" departure="05:13:18"/> </TRIP> <TRIP name="35-C" status="STOP" cars="8" destination="avm340" stops="avm183"> <SCHEDULED arrival="05:21:00" departure="05:21:18"/> </TRIP> <TRIP name="22BB" status="STOP" cars="4" destination="avm344" stops="avm2977"> <SCHEDULED arrival="05:28:00" departure="05:28:18"/> </TRIP> <TRIP name="28BV" status="STOP" cars="4" destination="avm375" stops="avm1786"> <SCHEDULED arrival="24:45:00" departure="24:45:18"/> </TRIP> <TRIP name="108B" status="STOP" cars="6" destination="avm328" stops="avm3371"> <SCHEDULED arrival="07:18:36" departure="07:19:00"/> </TRIP> <TRIP name="10-D" status="STOP" cars="8" destination="avm331" stops="avm2735"> <SCHEDULED arrival="07:27:36" departure="07:28:00"/> </TRIP> <TRIP name="104B" status="STOP" cars="6" destination="avm328" stops="avm58"> <SCHEDULED arrival="07:32:36" departure="07:33:00"/> </TRIP> <TRIP name="5--C" status="STOP" cars="8" destination="avm330" stops="avm74"> <SCHEDULED arrival="07:37:36" departure="07:38:00"/> </TRIP> <TRIP name="14-M" status="STOP" cars="8" destination="avm328" stops="avm64"> <SCHEDULED arrival="17:02:36" departure="17:03:00"/> </TRIP> <TRIP name="5--L" status="STOP" cars="8" destination="avm330" stops="avm73"> <SCHEDULED arrival="17:06:36" departure="17:07:00"/> </TRIP> <TRIP name="107P" status="STOP" cars="6" destination="avm331" stops="avm2735"> <SCHEDULED arrival="17:12:36" departure="17:13:00"/> </TRIP> <TRIP name="12-M" status="STOP" cars="8" destination="avm328" stops="avm60"> <SCHEDULED arrival="17:17:36" departure="17:18:00"/> </TRIP> <TRIP name="8--F" status="STOP" cars="8" destination="avm330" stops="avm73"> <SCHEDULED arrival="17:22:36" departure="17:23:00"/> </TRIP> <TRIP name="108K" status="STOP" cars="6" destination="avm373" stops="avm3205"> <SCHEDULED arrival="17:27:36" departure="17:28:00"/> </TRIP> <TRIP name="10-K" status="STOP" cars="8" destination="avm328" stops="avm64"> <SCHEDULED arrival="17:30:36" departure="17:33:00"/> </TRIP> </TIMETABLE_AT_NODE> </RFS_RESPONSE_TIMETABLE_AT_NODE>

8.5 Timetable download

8.5.1 Request for timetable

This RailForm is used to request complete Timetable, not only nodes.

8.5.1.1 DTD

Page 62: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 62 of 102

<!ELEMENT RFS_REQUEST_TIMETABLE (SESSION, TIMETABLE)> <!ATTLIST RFS_REQUEST_TIMETABLE version (1.0) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT TIMETABLE EMPTY> <!ATTLIST TIMETABLE rcs CDATA #REQUIRED timetable_date CDATA #IMPLIED timetable_id CDATA #IMPLIED timetable_version CDATA #IMPLIED

Table 29 – Values for Request for timetable

Parent Element

Element Name Attribute Name Data Type Size Values

Root <Timetable> Rcs Varchar 50 Rail Control System E.g. Sydney, Strathfield

Root <Timetable> Timetable_date DateTime 10 yyyy-mm-dd

Root <Timetable> Timetable_id Varchar 50 Eg. “D2410-SYD-DLY-MN-24-10-2001

Root <Timetable> Timetable_version Varchar 20 see section 8.2

Page 63: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 63 of 102

8.5.1.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_REQUEST_TIMETABLE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_TIMETABLE.DTD"> <RFS_REQUEST_TIMETABLE version="1.0"> <SESSION> <SESSION_ID timeout="20">DF8C1F2DB2EF4A898A8CEBBB31A34EAE</SESSION_ID> </SESSION> <TIMETABLE rcs="Sydney" timetable_id="D2410-SYD-DLY-MN-24-10-2001" timetable_version=”2014-03-15 10:05:12” /> </RFS_REQUEST_TIMETABLE>

8.5.2 Timetable response

This RailForm is used to send the complete Timetable, not only nodes.

8.5.2.1 DTD

<!ELEMENT RFS_RESPONSE_TIMETABLE (SESSION, RESPONSE_RESULT, WorkingTimetable*)> <!ATTLIST RFS_RESPONSE_TIMETABLE version (1.0) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)>

<!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED>

<!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT WorkingTimetable (AVItems,AVMessages?,SpecialTrainNotices?,Trips?)> <!ATTLIST WorkingTimetable Day (MONDAY|TUESDAY|WEDNESDAY|THURSDAY| FRIDAY|SATURDAY|SUNDAY) #REQUIRED Date CDATA #REQUIRED AVItemVersion CDATA #REQUIRED NodalGeographyVersion CDATA #REQUIRED Type (DWTT|SWTT) #REQUIRED Empty (TRUE|FALSE) #IMPLIED Description CDATA #REQUIRED SWTTVersion CDATA #REQUIRED SWTTCommissioned CDATA #REQUIRED ValidFrom CDATA #REQUIRED ValidTo CDATA #REQUIRED TTVersion CDATA #REQUIRED RCS CDATA #REQUIRED TimetableID CDATA #REQUIRED> <!ELEMENT DVAs (DVA+)> <!ELEMENT DVA EMPTY> <!ATTLIST DVA Code ID #REQUIRED Description CDATA #REQUIRED> <!ELEMENT SpecialTrainNotices (STN+)> <!ELEMENT STN EMPTY> <!ATTLIST STN Name CDATA #REQUIRED StartTime CDATA #REQUIRED FinishTime CDATA #REQUIRED IsUntilFurtherNotice (TRUE|FALSE) #REQUIRED Comments CDATA #REQUIRED >

Page 64: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 64 of 102

<!ELEMENT Trips (Trip+)> <!ELEMENT Trip (Body+, LinkedTrip*, AssociatedSTN*)> <!ATTLIST Trip ID CDATA #IMPLIED Name CDATA #REQUIRED StartTime CDATA #REQUIRED FinishTime CDATA #REQUIRED StartLocation CDATA #REQUIRED FinishLocation CDATA #REQUIRED RouteDirection (UP|DOWN|NULL) #REQUIRED Status (CONDITIONAL|MANDATORY|NULL) #REQUIRED Cars CDATA #REQUIRED Comments CDATA #REQUIRED Type (EMTY|EXCH|EXP|FGHT|LOCO|PASS| RDCH|SPCL|TRT|NULL) #REQUIRED> MaximumLength CDATA #REQUIRED MaximumTonnes CDATA #REQUIRED SpeedBand CDATA #REQUIRED Operator CDATA #REQUIRED> <!ELEMENT Body EMPTY> <!ATTLIST Body NodeID CDATA #IMPLIED Node CDATA #REQUIRED ArrivalTime CDATA #REQUIRED DepartureTime CDATA #REQUIRED StopStatus (P|S|T) #IMPLIED StoppingPatternID IDREF #IMPLIED DestinationID IDREF #IMPLIED DVACode IDREF #IMPLIED> <!ELEMENT LinkedTrip EMPTY> <!ATTLIST LinkedTrip ID CDATA #IMPLIED Name CDATA #REQUIRED LinkType (STABLES|STARTS|FORMS) #REQUIRED Cars CDATA #REQUIRED> <!ELEMENT AssociatedSTN EMPTY> <!ATTLIST AssociatedSTN Name CDATA #REQUIRED>

Table 30 – Values for timetable response

Parent Element Element Name Attribute Name Data Type

Size

Values

Root <RESPONSE_RESULT> Status Varchar 10 Eg. “0” – a zero indicates successful response

<RESPONSE_RESULT>

<RESPONSE_ MESSAGE> Varchar 100 An error message based on the error status

Root <WorkingTimetable> Day Varchar 15 “SUNDAY”, “MONDAY”, “TUESDAY”, “WEDNESDAY”, “THURSDAY”, “FRIDAY”, “SATURDAY”

Root <WorkingTimetable> Date DateTime 10 yyyy-mm-dd

Root <WorkingTimetable> AVItemVersion Varchar 5 Eg. “1.9”

Root <WorkingTimetable> NodalGeographyVersion

Varchar 5 Eg. “2.4”

Root <WorkingTimetable> Type Varchar 4 “DWTT”, “SWTT”

Root <WorkingTimetable> Empty Varchar 5 “TRUE”, “FALSE”

Page 65: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 65 of 102

Parent Element Element Name Attribute Name Data Type

Size

Values

Root <WorkingTimetable> Description Varchar 50 Eg. “NRL Grand Final”

Root <WorkingTimetable> SWTTVersion Varchar 50 Eg. “May 2000 Airport Timetable”

Root <WorkingTimetable> SWTTCommissioned DateTime 10 yyyy-mm-dd

Root <WorkingTimetable> ValidFrom DateTime 19 yyyy-mm-dd hh:mm:ss

Root <WorkingTimetable> ValidTo DateTime 19 yyyy-mm-dd hh:mm:ss

Root <WorkingTimetable> TTVersion VarChar 20 Eg. “2002-08-22 15:07:45”

Root <WorkingTimetable> RCS Varchar 25 Eg. “SYD”

Root <WorkingTimetable> TimetableID Varchar 50 Eg. “D0101-STR-DLY-TU-01-01-2002”

<WorkingTimetable> <AVItems>

<AVItems> <AVItem> ID VarChar 10 Eg. “avi0”

<AVItems> <AVItem> Name VarChar 50 Eg. “Bondi Junction”

<AVMessages> <StoppingPatterns>

<StoppingPatterns> <StoppingPattern> ID Varchar 20 Eg. “avm999”

<StoppingPatterns> <StoppingPattern> Name Varchar 50 Eg. “All To East Hills”

<StoppingPatterns> <StoppingPattern> Message Varchar Eg. “avi1 av2 avi4”

<AVMessages> <Destinations>

<Destinations> <Destination> ID VarChar 10 Eg. “avi1000”

<Destinations> <Destination> Name VarChar 50 Eg. “Cronulla”

<Destinations> <Destination> Message VarChar Eg. “avi1”

<AVMessages> <DVAs>

<DVAs> <DVA> Code Varchar 15 Eg. “dva1000”

<DVAs> <DVA> Description Varchar 50 Eg. “Hornsby via Strathfield”

<WorkingTimetable> <SpecialTrainNotices>

<SpecialTrainNotices> <STN> Name Varchar 20 Eg. “STN1001-2001”

<SpecialTrainNotices> <STN> StartTime DateTime 19 yyyy-mm-dd hh:mm:ss

<SpecialTrainNotices> <STN> FinishTime DateTime 19 yyyy-mm-dd hh:mm:ss

<SpecialTrainNotices> <STN> IsUntilFurtherNotice Varchar 5 “TRUE”, “FALSE”

<SpecialTrainNotices> <STN> Comments Varchar 50 Eg. “NRL Grand Final”

<WorkingTimetable> <Trips>

<Trips> <Trip> ID Int Eg. “1”

<Trips> <Trip> Name Varchar 6 Eg. “1—A”

Page 66: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 66 of 102

Parent Element Element Name Attribute Name Data Type

Values

<Trips> <Trip> StartTime DateTime 19 yyyy:mm:dd hh:mm:ss

<Trips> <Trip> FinishTime DateTime 19 yyyy:mm:dd hh:mm:ss

Eg. “Bondi Junction”

Eg. “Cronulla”

“UP”, “DOWN”,”NULL”

“CONDITIONAL”, “MANDATORY”, “NULL”

Eg. “8”

Eg. “Olympic Park Trip”

“EMTY”, “EXCH”, “EXP”, FGHT”, “LOCO”, “PASS”, “RDCH”, “SPCL”, TR/T”, “NULL”

For future use

For future use

For future use

For future use

Eg. “122”

Eg. “BJN1”

yyyy-mm-dd hh:mm:ss

yyyy-mm-dd hh:mm:ss

“S”, “P”, “T”

Eg. “A0047”

Eg. “A0048”

Eg. “1000”

Eg. “C404”

“STARTS”, “STABLES”, “FORMS”

Eg. “4”, Blank

<Trips> <Trip> StartLocation Varchar 50

<Trips> <Trip> FinishLocation Varchar 50

<Trips> <Trip> RouteDirection Varchar 4

<Trips> <Trip> Status Varchar 11

<Trips> <Trip> Cars Varchar

<Trips> <Trip> Comments Varchar 255

<Trips> <Trip> Type Varchar 4

<Trips> <Trip> MaximumLength Varchar

<Trips> <Trip> MaximumTonnes Varchar

<Trips> <Trip> SpeedBand Varchar

<Trips> <Trip> Operator Varchar

<Trip> <Body> NodeID Int

<Trip> <Body> Node Varchar 4

<Trip> <Body>

ArrivalTime DateTime 19

<Trip> <Body>

DepartureTime DateTime 19

<Trip> <Body> StopStatus Varchar 1

<Trip> <Body> StoppingPatternID Varchar 50

<Trip> <Body> DestinationID Varchar 50

<Trip> <Body> DVACode Int

<Trip> <LinkedTrip> ID Varchar 6

<Trip> <LinkedTrip> Name Varchar 6

<Trip> <LinkedTrip> LinkType Varchar 7

<Trip> <LinkedTrip> Cars Varchar if not available

<Trip> <AssociatedSTN> Name Varchar 20 Eg. “STN1001-2001”

Size

Page 67: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 67 of 102

Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_RESPONSE_TIMETABLE SYSTEM "http://RICOSS/RodNet/Dtd/Rfs_Response_Timetable.DTD"> < RFS_RESPONSE_TIMETABLE version=”1.0”> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES>

<VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE>

</USER_VALUES> <SERVER_VALUES>

<VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE>

</SERVER_VALUES> </SESSION>

<RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT>

<WorkingTimetable Day="SUNDAY" Date="2002-04-21" AVItemVersion="1.9" NodalGeographyVersion="2.6" Type="SWTT" Empty=”FALSE” Description="" SWTTVersion="April 2002" SWTTCommissioned="2002-04-21" ValidFrom="" ValidTo="" TTVersion="1" RCS="SCT" TimetableID="D2104-SCT-DLY-SU-21-04-2002">

<AVItems> <AVItem ID="avi0" Name="DEFAULT"/> <AVItem ID="avi2" Name="BONDI JUNCTION"/>

</AVItems>

<AVMessages> <StoppingPatterns>

<StoppingPattern ID="avm999" Name="NA"/> <StoppingPattern ID="avm1001" Name="Test" Message=" avi0 avi2"/> <StoppingPattern ID="avm2222" Name="Test2" Message=" avi2"/>

</StoppingPatterns>

<Destinations> <Destination ID="avm1000" Name="NA"/>

</Destinations> </AVMessages>

<SpecialTrainNotices> <STN Name="STN1000-2001" StartTime="2001-10-09 00:00:00"

FinishTime="2001-10-10 00:00:00 " IsUntilFurtherNotice="FALSE" Comments="NRL Grand Final"/>

</SpecialTrainNotices>

<Trips> <Trip Name="C220" StartTime="2002-04-21 03:21:00" FinishTime="2002-04-21

03:40:00" StartLocation="Port Kembla" FinishLocation="Port Kembla" RouteDirection="NULL" Status="NULL" Cars="4" Comments="" Type="NULL" MaximumLength=”” MaximumTonnes=”” SpeedBand=”” Operator=””>

<Body Node="PKB1" ArrivalTime="2002-04-21 03:21:00" DepartureTime="2002-04-21 03:21:00" StopStatus="S" StoppingPatternID="avm999" DestinationID="avm1000"/>

<Body Node="PKBH" ArrivalTime="2002-04-21 03:21:12" DepartureTime="2002-04-21 03:21:12" />

<LinkedTrip Name="" LinkType="STARTS" Cars=""/> <LinkedTrip Name="C201" LinkType="FORMS" Cars=""/>

</Trip> </Trips> </WorkingTimetable> </ RFS_RESPONSE_TIMETABLE >

Page 68: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 68 of 102

9. Publishing and subscribing

9.1 Subscribe

9.1.1 Objectives

The server publishes information to provide constant update for subscribers. Subscribers will

use the Subscription Request RailForm to subscribe any published information for a single or

multiple Rail Control System (RCS) area. The following subscription can be set-up.

occupying trips, approaching trips, departing trips

NetReports

timetable status

120 V Signalling Power Supply Status (See section 6.5)

9.1.2 Subscription Item

A published item refers to a piece of published information that is typically one attribute of a Rail

Control entity. An entity is defined by RCS and name. A published item is identified by RCS,

Entity Name and Publish Type. I.e. Sydney, 846 Signal can publish its assets status being the

signal aspect, or its alarm status indicating a train has passed a signal at stop.

9.1.2.1 Publish Type

It identifies a type of published information. E.g.OccupyingTrips, NetReports, TimetableStatus,

AssetStatus, et

9.1.2.2 RCS

Rail Control System name. E.g. Sydney, Strathfield, Sydenham, NSR, MetroNet

9.1.2.3 Entity Name

The type of item referred to by the name depends on the publish type. i.e.:

Table 31 – Subscription item

Publish Type Entity Name

OccupyingTrips Location name (E.g. 0523)

NetReports Node name (E.g. BJN1)

TimetableStatus Node name. (E.g. BJN1)

AssetStatus Asset Id. (E.g. SM422AR)

9.1.2.4 Profiles

A profile is a collection of subscription items. The Administrator is responsible for creating and

maintaining profiles for the clients, and form part of the server configuration data. e.g.

MetroActiveTrip

Page 69: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 69 of 102

SydneyRcsActiveTrip

SydenhamRcsActiveTrip

NSRActiveTrip

MetronetActiveTrip

9.1.2.5 Notification Type and Delivery Method

Initial release will support XML and HTTP only. If any other notification type or delivery method

is specified a “not supported” error will be response result.

9.1.2.6 Subscription request

This is a common RailForm to subscribe for any subscription item available from the server. E.g.

OccupyingTrips, NetReports, TimetableStatus and Electrical Scada.

9.1.2.7 Subscription Items

Subscription items are specified by <ENTITIES> and/or <PROFILES>.

<ENTITIES> element is used to specify each subscription item. Examples:

<ENTITIES>

<ENTITY rcs=”Sydney” entity_name=”0529” publish_type=”OccupyingTrips”>

<ENTITY rcs=”Sydney” entity_name=”A744” publish_type=”OccupyingTrips”>

<ENTITY rcs=”Sydney” entity_name=”ASHF01” publish_type=”NetReports”>

<ENTITY rcs=”Sydney” entity_name=”BOND02” publish_type=”NetReports”>

</ENTITIES>

<PROFILES> element is used to specify each subscription profile. Examples:

<PROFILES>

<PROFILE>SydneyRcsActiveTrips</PROFILE>

<PROFILE>StrathfieldRcsActiveTrips</PROFILE>

<PROFILE>MetronetActiveTrips</PROFILE>

</PROFIELS>

9.1.2.8 DTD

<!ELEMENT RFS_SUBSCRIBE (SESSION, PROFILES?, SUBSCRIBE)> <!ATTLIST RFS_SUBSCRIBE

version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)>

<!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID

timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)>

<!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE

key CDATA #REQUIRED>

<!ELEMENT SERVER_VALUES (VALUE+)>

<!ELEMENT SUBSCRIBE (ENTITIES?, PROFILES?)> <!ATTLIST SUBSCRIBE

notification_type (XML|URL) "XML" delivery_method (HTTP|EMAIL) "HTTP"address CDATA #IMPLIED>

<!ELEMENT ENTITIES (ENTITY+)> <!ELEMENT ENTITY EMPTY> <!ATTLIST ENTITY

Page 70: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 70 of 102

rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT PROFILES (PROFILE+)> <!ELEMENT PROFILE (#PCDATA)>

Table 32 – Values for subscription items

Parent Element

Element Name Attribute Name Data Type

Size Values

Root <SUBSCRIBE> Notification_type VarChar 10 XML or URL

Root <SUBSCRIBE> Delivery_method Varchar 10 HTTP or EMAIL

Root <SUBSCRIBE> address VarChar 255 Email address if delivery method is “EMAIL”

<ENTITIES> <ENTITY> rcs VarChar 50 Rail Control System Name

<ENTITIES> <ENTITY> entity_name VarChar 50 Location name for Active Trips or Platform Id for Net Report

<ENTITIES> <ENTITY> publish_type VarChar 50 Type of published information. E.g. OccupyingTrips, NetReports, TimetableStatus

<PROFILES> <PROFILE> VarChar 255 Profile name created by the server Administrator e.g. MetroActiveTrips, SydneyRcsActiveTrips, StrathfieldRcsActiveTrips, MetronetActiveTrips, etc

9.1.2.9 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_SUBSCRIBE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_SUBSCRIBE.DTD"> <RFS_SUBSCRIBE version="1.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <SUBSCRIBE notification_type="XML" delivery_method="HTTP"> <ENTITIES> <ENTITY rcs=”Sydney” entity_name=”MPL1” publish_type=”NetReports”/> </ENTITIES> <PROFILES> <PROFILE>SydneyRcsActiveTrips</PROFILE> <PROFILE>StrathfieldRcsActiveTrips</PROFILE> </PROFILES> </SUBSCRIBE> </RFS_SUBSCRIBE>

Page 71: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 71 of 102

9.1.3 Subscription confirmation message

The server will respond with a confirmation message as soon as it validates a subscription

request from the client. A subscriber does not need to re-send a subscription request once a

confirmation message is received from the server. A subscriber can re-send a revised

subscription request to change subscription items.

The ‘status’ attribute in the <RESPONSE_RESULT> element indicates that the subscription

requested accepted if the status attribute is 0 or rejected if the status attribute is non-zero value

(refer to Appendix A for description of each status).

9.1.3.1 DTD

<!ELEMENT RFS_SUBSCRIBE_CONFIRM (SESSION, RESPONSE_RESULT)> <!ATTLIST RFS_SUBSCRIBE_CONFIRM

version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)>

<!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)>

<!ATTLIST VALUEkey CDATA #REQUIRED>

<!ELEMENT SERVER_VALUES (VALUE+)>

<!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Table 33 – Values for subscription confirmation message

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <RESPONSE_RESULT> Status Integer 4 0: Successnon-zero: See Appendix A

<RESPONSE_RESULT> <RESPONSE_MESSAGE> VarChar 255 Error message sent by the server if status is non-zero, otherwise it’s Empty.

9.1.3.2 Sample XML

<?xml version="1.0"?>

<!DOCTYPE RFS_SUBSCRIBE_CONFIRM SYSTEM "http://RICOSS/RodNet/Dtd/RFS_SUBSCRIBE_CONFIRM.DTD"> <RFS_SUBSCRIBE_CONFIRM version="1.0"> <SESSION> <SESSION_ID timeout="20">2</SESSION_ID> <USER_VALUES>

<VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE>

<VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES>

<VALUE key="queue">t1-oss-1\8374F162A65911D4AD7900508B6B7F7E</VALUE><VALUE key="msgid">0</VALUE></SERVER_VALUES>

</SESSION> <RESPONSE_RESULT status="0">

<RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_SUBSCRIBE_CONFIRM>

Page 72: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 72 of 102

9.1.4 Acknowledgement of 'confirmation' or 'publish' messages

This RailForm is used to notify the server for acknowledgement of confirmation or published

messages received. A subscriber should send an acknowledgement message whenever it

receives a confirmation or published messages from the server.

9.1.4.1 DTD

<!ELEMENT RFS_PUBLISH_ACKNOWLEDGE (SESSION, ACKNOWLEDGED)> <!ATTLIST RFS_PUBLISH_ACKNOWLEDGE version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT ACKNOWLEDGED (#PCDATA)>

Table 34 – Values for acknowledgement of confirmation or publish message

Parent Element Element Name Attribute Name

Data Type

Size Values

<SERVER_VALUES> <VALUE> Key VarChar 255 “queue” or “msgid”

<SERVER_VALUES> <VALUE> VarChar 255 Queue name or message Id to be acknowledged

ROOT <ACKNOWLEDGED> VarChar 255 OK, RESEND or INVALIDXML

9.1.4.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_PUBLISH_ACKNOWLEDGE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_PUBLISH_ACKNOWLEDGE.DTD"> <RFS_PUBLISH_ACKNOWLEDGE version="1.0"> <SESSION> <SESSION_ID timeout="20">8374F162A65911D4AD7900508B6B7F7E</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="queue">t1-oss-1\8374F162A65911D4AD7900508B6B7F7E</VALUE> <VALUE key="msgid">1</VALUE> </SERVER_VALUES> </SESSION> <ACKNOWLEDGED>OK</ACKNOWLEDGED> </RFS_PUBLISH_ACKNOWLEDGE>

9.1.5 Publish subscription items

This RailForm is used to publish information whenever changes occur.

“RFS_PUBLISH” is a common RailForm that the server uses it to publish any subscription items

available. For example:

Heartbeat

OccupyingTrips, Departing Trips, Approaching Trips

NetReports

Page 73: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 73 of 102

Asset Status

Alarms

Restrictions

Timetable Status (Importing or Loading a new timetable)

9.1.5.1 DTD

<!ELEMENT RFS_PUBLISH (SESSION, RESPONSE_RESULT, PUBLISH)> <!ATTLIST RFS_PUBLISH version (1.0|1.1|1.2|2.0) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)> <!ELEMENT PUBLISH (RAIL_CONTROL_SYSTEM | HEARTBEAT | TRIPS_AT_LOCATION | QUEUE | NETREPORT | TIMETABLE_STATUS | SIGNAL | REPLACEMENT_SIGNAL | TRACK | TRACK_TIMER | POINTS | GROUND_FRAME | ROUTE | TRAINSTOP | EARTH_LEAKAGE_DETECTOR | SIGNAL_FILAMENT | SIGNAL_LAMP | AIR_COMPRESSOR | DC_POWER_SUPPLY | AC_POWER_SUPPLY | RELEASING_SWITCH | AUTO_RECLEAR | FIRE_SYSTEM | SECURITY_SYSTEM | CONTROL_PANEL | RING_CIRCUIT | RTU | SYSTEM | EMERGENCY_SHUNT_FUNCTION | FLOOD_DETECTOR | GENERAL_ALARM | AUTO_SIGNAL_WITH_A_LIGHT | DIRECTION_INDICATOR | LEVEL_CROSSING |

HIGH_LOAD_DETECTOR | DUAL_CONTROL | CLOSING_LEVER | HALF_PILOT_STAFF | VENTILATION_LOCK | NON_STOPPING_TRAIN_FUNCTION | DIRECTION_OVERRIDE | QUEUE_MODE | ALARM | RESTRICTIONS | ARS | RCS_SECURITY | RCS_HOST_STATUS | TRACK_SEQUENCE_FUNCTION

)*> <!ATTLIST PUBLISH time CDATA #IMPLIED> <!-- Rail Control System Status --> <!ELEMENT RAIL_CONTROL_SYSTEM EMPTY> <!ATTLIST RAIL_CONTROL_SYSTEM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED connection_status (CONNECTED|DISCONNECTED) #REQUIRED last_update CDATA #REQUIRED timeout CDATA #REQUIRED> <!-- Heartbeat --> <!ELEMENT HEARTBEAT EMPTY> <!ATTLIST HEARTBEAT source CDATA #REQUIRED name (HEARTBEAT) "HEARTBEAT" publish_type (SYSTEM) "SYSTEM" heartbeat_time CDATA #REQUIRED heartbeat_interval CDATA #REQUIRED> <!-- OccupyingTrips, ApproachingTrips, DepartedTrips --> <!ELEMENT TRIPS_AT_LOCATION (TRIP*)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT TRIP (DESTINATION|STOPS|EXPECTED|SCHEDULED|FORMS_TRIP|FORMED_BY_TRIP|TRIP_STATUS_FLAGS)*> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)>

Page 74: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 74 of 102

<!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STATION EMPTY> <!ATTLIST STATION id CDATA #REQUIRED name CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #IMPLIED departure CDATA #IMPLIED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #IMPLIED departure CDATA #IMPLIED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT TRIP_STATUS_FLAGS EMPTY> <!ATTLIST TRIP_STATUS_FLAGS is_changed_status (TRUE | FALSE) #REQUIRED is_timetabled_trip (TRUE | FALSE) #REQUIRED is_timetabled_location (TRUE | FALSE) #REQUIRED is_cancelled_trip (TRUE | FALSE) #REQUIRED is_previous_day (TRUE | FALSE) #REQUIRED is_active (TRUE | FALSE) #REQUIRED is_has_run (TRUE | FALSE) #REQUIRED is_stop (TRUE | FALSE) #REQUIRED is_terminate (TRUE | FALSE) #REQUIRED is_edited (TRUE | FALSE) #REQUIRED is_original_location (TRUE | FALSE) #REQUIRED is_occupying (TRUE | FALSE) #REQUIRED> <!--QUEUE --> <!ELEMENT QUEUE (TRIP*)> <!ATTLIST QUEUE rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!-- TRACK (AssetTypeId=6) --> <!ELEMENT TRACK EMPTY> <!ATTLIST TRACK rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED occupancy (INDETERMINATE|OCCUPIED|UNOCCUPIED) #REQUIRED disregarded (FALSE|TRUE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- SIGNAL (AssetTypeId=0) --> <!ELEMENT SIGNAL EMPTY> <!ATTLIST SIGNAL rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED signal_aspect (INDETERMINATE|PROCEED|STOP|STOP_LOCKED|CLEARING|FAILED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- REPLACEMENT_SIGNAL (AssetTypeId=1) --> <!ELEMENT REPLACEMENT_SIGNAL EMPTY> <!ATTLIST REPLACEMENT_SIGNAL rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED signal_aspect (INDETERMINATE|PROCEED|STOP|STOP_LOCKED|CLEARING|FAILED) #REQUIRED replacement_state (INDETERMINATE|IN_REPLACEMENT|GOING_TO_REPLACEMENT| IN_AUTO|GOING_TO_AUTO|FAILED_IN_REPLACEMENT|FAILED_IN_AUTO) #REQUIRED state_valid (INVALID|VALID) #REQUIRED>

Page 75: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

<!-- TRAINSTOP (AssetTypeId=11) --> <!ELEMENT TRAINSTOP EMPTY> <!ATTLIST TRAINSTOP rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|NORMAL|REVERSE|GOING_TO_NORMAL| GOING_TO_REVERSE|FAILED_INPUTS|FAILED_WHILE_MOVING) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- FLOOD_DETECTOR (AssetTypeId=28) --> <!ELEMENT FLOOD_DETECTOR EMPTY> <!ATTLIST FLOOD_DETECTOR rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED warning_indication (BIT_INDETERMINATE|BIT_NORMAL|BIT_ACTIVE) #REQUIRED alarm_indication (BIT_INDETERMINATE|BIT_NORMAL|BIT_ACTIVE) #REQUIRED override_indication (BIT_INDETERMINATE|BIT_NORMAL|BIT_ACTIVE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- GROUND_FRAME (AssetTypeId=9) --> <!ELEMENT GROUND_FRAME EMPTY> <!ATTLIST GROUND_FRAME rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED position (INDETERMINATE|NORMAL|NOT_NORMAL|FAILED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- POINTS (AssetTypeId=8) --> <!ELEMENT POINTS EMPTY> <!ATTLIST POINTS rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED position (INDETERMINATE|NORMAL|REVERSE|GOING_TO_NORMAL| GOING_TO_REVERSE|FAILED_INPUTS|FAILED_WHILE_MOVING) #REQUIRED lock_status (INDETERMINATE|LOCKED|FREE) #REQUIRED last_issued_command (SET_NORMAL|SET_REVERSE|SET_CENTRE|INDETERMINATE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- NET REPORT --> <!ELEMENT NETREPORT (TRIP)*> <!ATTLIST NETREPORT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED location CDATA #REQUIRED platform CDATA #REQUIRED> <!-- AC_POWER_SUPPLY --> <!ELEMENT AC_POWER_SUPPLY EMPTY> <!ATTLIST AC_POWER_SUPPLY rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED combined_status (INDETERMINATE|NORMAL|NORMAL_SUPPLY_FAILED| EMERGENCY_SUPPLY_FAILED|ALARM|FAILED) #IMPLIED power (A|NA|UN) #IMPLIED normal (A|NA|UN) #IMPLIED emergency (A|NA|UN) #IMPLIED state_valid (INVALID|VALID) #REQUIRED> <!-- IMPORT or LOAD TIMETABLE --> <!ELEMENT TIMETABLE_STATUS EMPTY> <!ATTLIST TIMETABLE_STATUS rcs CDATA #REQUIRED entity_name (IMPORTED|LOADED|UNLOADED) #REQUIRED publish_type CDATA #REQUIRED timetable_id CDATA #REQUIRED version CDATA #REQUIRED type (STANDARD|DAILY) #REQUIRED day (Sunday|Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|PublicHoliday) #REQUIRED valid_from CDATA #REQUIRED valid_to CDATA #REQUIRED> <!-- TRACK_TIMER (AssetTypeId=7) --> <!ELEMENT TRACK_TIMER EMPTY> <!ATTLIST TRACK_TIMER

© State of NSW through Transport for NSW Page 75 of 102

Page 76: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 76 of 102

rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED timer_status (INDETERMINATE|EXPIRED|NOT_EXPIRED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- ROUTE (AssetTypeId=10) --> <!ELEMENT ROUTE EMPTY> <!ATTLIST ROUTE rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED route_status (INDETERMINATE|SET|NOT_SET_AND_AVAILABLE| NOT_SET_AND_NOT_AVAILABLE|SETTING|CANCELLING|FAILED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- EARTH_LEAKAGE_DETECTOR (AssetTypeId=12) --> <!ELEMENT EARTH_LEAKAGE_DETECTOR EMPTY> <!ATTLIST EARTH_LEAKAGE_DETECTOR rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED leakage (INDETERMINATE|DETECTED|NOT_DETECTED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- SIGNAL_FILAMENT (AssetTypeId=13) --> <!ELEMENT SIGNAL_FILAMENT EMPTY> <!ATTLIST SIGNAL_FILAMENT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED filament_health (INDETERMINATE|FAILED|OK) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- SIGNAL_LAMP (AssetTypeId=14) --> <!ELEMENT SIGNAL_LAMP EMPTY> <!ATTLIST SIGNAL_LAMP rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED lamp_health (INDETERMINATE|FAILED|OK) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- AIR_COMPRESSOR (AssetTypeId=15) --> <!ELEMENT AIR_COMPRESSOR EMPTY> <!ATTLIST AIR_COMPRESSOR rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED pressure (INDETERMINATE|LOW|NOT_LOW) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- DC_POWER_SUPPLY (AssetTypeId=16) --> <!ELEMENT DC_POWER_SUPPLY EMPTY> <!ATTLIST DC_POWER_SUPPLY rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED availability (INDETERMINATE|NORMAL|WARNING|ALARM) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- RELEASING_SWITCH (AssetTypeId=18) --> <!ELEMENT RELEASING_SWITCH EMPTY> <!ATTLIST RELEASING_SWITCH rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|LOCKED_KEY_IN|RELEASED_KEY_IN|RELEASED_KEY_OUT| LOCKING_KEY_OUT|FAILED|RELEASING_KEY_IN|LOCKING_KEY_IN) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- AUTO_RECLEAR (AssetTypeId=19) --> <!ELEMENT AUTO_RECLEAR EMPTY> <!ATTLIST AUTO_RECLEAR rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED auto_state (INDETERMINATE|SET|NOT_SET) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- FIRE_SYSTEM (AssetTypeId=20) --> <!ELEMENT FIRE_SYSTEM EMPTY> <!ATTLIST FIRE_SYSTEM rcs CDATA #REQUIRED

Page 77: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 77 of 102

entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (NORMAL|FIRE_DETECTED|FAULT|INDETERMINATE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- SECURITY_SYSTEM (AssetTypeId=21) --> <!ELEMENT SECURITY_SYSTEM EMPTY> <!ATTLIST SECURITY_SYSTEM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (NORMAL|ALERT|FAULT|INDETERMINATE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- CONTROL_PANEL (AssetTypeId=22) --> <!ELEMENT CONTROL_PANEL EMPTY> <!ATTLIST CONTROL_PANEL rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED control_panel_status (INDETERMINATE|LOCAL|REMOTE|FAILED|TRANSITION)

#REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- RING_CIRCUIT (AssetTypeId=23) --> <!ELEMENT RING_CIRCUIT EMPTY> <!ATTLIST RING_CIRCUIT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED ring_circuit_status (INDETERMINATE|NOT_IN_USE| MACHINE_IN_USE|FINISHING|TRANSITIONAL) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- RTU (AssetTypeId=25) --> <!ELEMENT RTU EMPTY> <!ATTLIST RTU rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED health CDATA #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- SYSTEM (AssetTypeId=26) --> <!ELEMENT SYSTEM EMPTY> <!ATTLIST SYSTEM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (STANDBY|MASTER) #REQUIRED health CDATA #REQUIRED band CDATA #REQUIRED computer_name CDATA #REQUIRED> <!-- EMERGENCY_SHUNT_FUNCTION (AssetTypeId=27) --> <!ELEMENT EMERGENCY_SHUNT_FUNCTION EMPTY> <!ATTLIST EMERGENCY_SHUNT_FUNCTION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|ENABLED|DISABLED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- GENERAL_ALARM (AssetTypeId=29) --> <!ELEMENT GENERAL_ALARM EMPTY> <!ATTLIST GENERAL_ALARM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|ON|OFF) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- AUTO_SIGNAL_WITH_A_LIGHT (AssetTypeId=30) --> <!ELEMENT AUTO_SIGNAL_WITH_A_LIGHT EMPTY> <!ATTLIST AUTO_SIGNAL_WITH_A_LIGHT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED signal_aspect (INDETERMINATE|PROCEED|STOP|STOP_LOCKED|CLEARING|FAILED) #REQUIRED state (INDETERMINATE|AUTO_OFF|AUTO_ON) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- DIRECTION_INDICATOR (AssetTypeId=33) --> <!ELEMENT DIRECTION_INDICATOR EMPTY> <!ATTLIST DIRECTION_INDICATOR

Page 78: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 78 of 102

rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (INDETERMINATE|NORMAL|APPROACHING|LEAVING|FAILED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- LEVEL_CROSSING (AssetTypeId=34) --> <!ELEMENT LEVEL_CROSSING EMPTY> <!ATTLIST LEVEL_CROSSING rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (NORMAL|WARNING|ALARM|INDETERMINATE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- HIGH_LOAD_DETECTOR (AssetTypeId=35) --> <!ELEMENT HIGH_LOAD_DETECTOR EMPTY> <!ATTLIST HIGH_LOAD_DETECTOR rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (INDETERMINATE|HIGH_LOAD|NORMAL|FAILED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- DUAL_CONTROL (AssetTypeId=36) --> <!ELEMENT DUAL_CONTROL EMPTY> <!ATTLIST DUAL_CONTROL rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (INDETERMINATE|ACCEPTED|NOT_ACCEPTED) #REQUIRED availability (INDETERMINATE|AVAILABLE|NOT_AVAILABLE) #IMPLIED state_valid (INVALID|VALID) #REQUIRED> <!-- CLOSING_LEVER (AssetTypeId=37) --> <!ELEMENT CLOSING_LEVER EMPTY> <!ATTLIST CLOSING_LEVER rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (INDETERMINATE|SWITCHED_IN|SWITCHED_OUT) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- HALF_PILOT_STAFF (AssetTypeId=38) --> <!ELEMENT HALF_PILOT_STAFF EMPTY> <!ATTLIST HALF_PILOT_STAFF rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status (INDETERMINATE|IN_LOCK|OUT_OF_LOCK) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- VENTILATION_LOCK (AssetTypeId=39) --> <!ELEMENT VENTILATION_LOCK EMPTY> <!ATTLIST VENTILATION_LOCK rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|ENABLED|DISABLED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- NON_STOPPING_TRAIN_FUNCTION (AssetTypeId=40) --> <!ELEMENT NON_STOPPING_TRAIN_FUNCTION EMPTY> <!ATTLIST NON_STOPPING_TRAIN_FUNCTION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|ENABLED|DISABLED) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!—DIRECTION_OVERRIDE (AssetTypeId=41) --> <!ELEMENT DIRECTION_OVERRIDE EMPTY> <!ATTLIST DIRECTION_OVERRIDE rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED state (INDETERMINATE|SET|TIMING|NOT_SET) #REQUIRED state_valid (INVALID|VALID) #REQUIRED> <!-- QUEUE_MODE --> <!ELEMENT QUEUE_MODE EMPTY> <!ATTLIST QUEUE_MODE rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type (QueueMode) #REQUIRED queue_mode (AUTOMATIC|MANUAL) #REQUIRED>

Page 79: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 79 of 102

<!-- ALARM --> <!ELEMENT ALARM (#PCDATA)> <!ATTLIST ALARM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED alarm_type CDATA #REQUIRED alarm_instance CDATA #REQUIRED alarm_severity CDATA #REQUIRED alarm_status (SET|CLEAR) #REQUIRED alarm_acknowledged (True|False) #REQUIRED alarm_time CDATA #REQUIRED> <!-- RESTRICTIONS --> <!ELEMENT RESTRICTIONS (RESTRICTION*, AFFECTED_OBJECTS?)> <!ATTLIST RESTRICTIONS rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type (RestrictionStatus) #REQUIRED message_type (Details|Info) #REQUIRED num_of_blocks CDATA #IMPLIED> <!ELEMENT RESTRICTION (COMMENT*)> <!ATTLIST RESTRICTION id CDATA #REQUIRED command (SET|SET_REVERSE|REMOVE|UPDATE) #REQUIRED type (TOTAL_BLOCK|STOP_AND_BLOCK|REMINDER) #REQUIRED> <!ELEMENT COMMENT (#PCDATA)> <!ATTLIST COMMENT id CDATA #REQUIRED operator CDATA #REQUIRED workstation CDATA #REQUIRED timestamp CDATA #REQUIRED> <!ELEMENT AFFECTED_OBJECTS (OBJECT*)> <!ELEMENT OBJECT EMPTY> <!ATTLIST OBJECT rcs CDATA #REQUIRED name CDATA #REQUIRED> <!-- ARS --> <!ELEMENT ARS EMPTY> <!ATTLIST ARS rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type (ArsGroupState) #REQUIRED control_state (AUTOMATIC|OFF) #REQUIRED alarm_state (ALARM|CLEAR|PENDING_CLEAR) #REQUIRED> <!-- RCS_SECURITY --> <!ELEMENT RCS_SECURITY (LOGON_STATE*,SESSION_PROFILES*, SESSION_ENTITIES*)> <!ATTLIST RCS_SECURITY rcs CDATA #REQUIRED entity_name (LogonState|RcsSessionProfiles| RcsSessionEntities) #REQUIRED publish_type (Security) #REQUIRED message_type (Details|Update) #REQUIRED> <!ELEMENT LOGON_STATE EMPTY> <!ATTLIST LOGON_STATE session_id CDATA #REQUIRED user_id CDATA #REQUIRED state (LOGON|LOGOFF|CHANGE_USER) #REQUIRED> <!ELEMENT SESSION_PROFILES (#PCDATA)> <!ATTLIST SESSION_PROFILES session_id CDATA #REQUIRED subscription_state (SUBSCRIBED|UNSUBSCRIBED| OVERSUBSCRIBED) #REQUIRED send_to_workstation CDATA #IMPLIED> <!ELEMENT SESSION_ENTITIES (#PCDATA)> <!ATTLIST SESSION_ENTITIES session_id CDATA #REQUIRED subscription_state (SUBSCRIBED|UNSUBSCRIBED| OVERSUBSCRIBED) #REQUIRED send_to_workstation CDATA #IMPLIED> <!-- RCS_HOST_STATUS --> <!ELEMENT RCS_HOST_STATUS EMPTY> <!ATTLIST RCS_HOST_STATUS rcs CDATA #REQUIRED entity_name CDATA #REQUIRED

Page 80: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 80 of 102

publish_type (RcsHostStatus) #REQUIRED health_status CDATA #REQUIRED health_band CDATA #REQUIRED health_band_description CDATA #REQUIRED computer_name CDATA #REQUIRED process_mode (UNKNOWN|MASTER|STANDBY) #REQUIRED arbitration_mode (MANUAL|AUTO) #REQUIRED Is_STPS_connected (True|False) #REQUIRED Is_Synchronising (True|False) #REQUIRED max_time_to_synchronise CDATA #REQUIRED> <!-- TRACK_SEQUENCE_FUNCTION --> <!ELEMENT TRACK_SEQUENCE_FUNCTION EMPTY> <!ATTLIST TRACK_SEQUENCE_FUNCTION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED status_dm_bc (INDETERMINATE|FAILURE| NO_FAILURE) #REQUIRED status_um_bc (INDETERMINATE|FAILURE| NO_FAILURE) #REQUIRED status_dm_hb (INDETERMINATE|FAILURE| NO_FAILURE) #REQUIRED status_um_hb (INDETERMINATE|FAILURE| NO_FAILURE) #REQUIRED state_valid (INVALID|VALID) #REQUIRED>

9.1.5.2 Sample XML

<?xml version="1.0"?> <!DOCTYPE RFS_PUBLISH SYSTEM "http://RICOSS/RodNet/Dtd/RFS_PUBLISH.DTD"> <RFS_PUBLISH version="2.0"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID> </SESSION> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE></RESPONSE_MESSAGE> </RESPONSE_RESULT> <PUBLISH time="2002-10-18 13:05:16"> <RAIL_CONTROL_SYSTEM rcs="Sydney" entity_name="rcs_status" publish_type="system_status" connection_status="CONNECTED" last_update="2000-06-30 13:10:32" timeout="180"/> <RAIL_CONTROL_SYSTEM rcs="Strathfield" entity_name="rcs_status" publish_type="system_status" connection_status="CONNECTED" last_update="2000-06-30 12:23:42" timeout="180"/> <HEARTBEAT source="OSS" name="HEARTBEAT" publish_type="SYSTEM" heartbeat_time="2000-06-30 17:24:04" heartbeat_interval="5000"/> <TRIPS_AT_LOCATION rcs="Sydney" entity_name="0529" publish_type="OccupyingTrips"> <TRIP name="3--K" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="8"> <DESTINATION msgid="54"> <STATION id="13" name="Central"/> </DESTINATION> <STOPS msgid="1104"> <STATION id="13" name="CENTRAL"/> <STATION id="14" name="TOWN HALL"/> <STATION id="15" name="WYNYARD"/> <STATION id="16" name="CIRCULAR QUAY"/> <STATION id="17" name="ST JAMES"/> <STATION id="18" name="MUSEUM"/> <STATION id="13" name="CENTRAL"/> </STOPS> <EXPECTED arrival="2000-06-30 17:32:54"/> </TRIP> </TRIPS_AT_LOCATION> <AC_POWER_SUPPLY rcs="Sydney" entity_name="abc1" publish_type="AssetStatus" power="NA" normal="NA" emergency="NA" combined_status="ALARM" state_valid="VALID"/> <ALARM rcs="Sydenham" entity_name="SM629BT" publish_type="AlarmStatus" alarm_type="AXN_TRK_OCC_SEQ" alarm_instance="0" alarm_severity="1" alarm_status="SET" alarm_acknowledged="False" alarm_time="2002-10-02 14:23:11">Track SM629BT Occupied Out of Sequence.</ALARM> <RESTRICTIONS rcs="sydenham" entity_name="SM626" publish_type="RestrictionStatus" message_type="Details" num_of_blocks="3"> <RESTRICTION id="06C5387440F944DA2F4DBB0D2E125BC0AFF92FE8" command="SET"

Page 81: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 81 of 102

type="REMINDER"> <COMMENT id="06C5387440F944DA2F4DBB0D2E125BC0AFF92FE8" operator="Operator3" workstation="T6-SM-WS-1" timestamp="2002-10-09 12:28:51"> Track to be upgraded </COMMENT> </RESTRICTION> <RESTRICTION id="F3CCC6A1E1C7FA5FDF27DB13B7AAB2D8B3716087" command="SET" type="TOTAL_BLOCK"> <COMMENT id="F3CCC6A1E1C7FA5FDF27DB13B7AAB2D8B3716087" operator="Operator3" workstation="T6-SM-WS-1" timestamp="2002-10-09 12:29:19"> Track possession </COMMENT> </RESTRICTION> <RESTRICTION id="89E956072AFC919AD024F27087A15E9FE89CF550" command="SET" type="STOP_AND_BLOCK"> <COMMENT id="89E956072AFC919AD024F27087A15E9FE89CF550" operator="Operator3" workstation="T6-SM-WS-1" timestamp="2002-10-09 12:29:44"> Track possession </COMMENT> </RESTRICTION> <RESTRICTION id="3B7FA8E519F87915DA87D8F51F69FCBF0B0E792D" command="SET" type="REMINDER"> <COMMENT id="3B7FA8E519F87915DA87D8F51F69FCBF0B0E792D" operator="Operator3" workstation="T6-SM-WS-1" timestamp="2002-10-09 12:30:11"> Notify station master </COMMENT> </RESTRICTION> <AFFECTED_OBJECTS> <OBJECT rcs="sydenham" name="SM626(M)A"/> <OBJECT rcs="sydenham" name="SM626(M)B"/> <OBJECT rcs="sydenham" name="SM626(S)A"/> <OBJECT rcs="sydenham" name="SM626(S)B"/> <OBJECT rcs="sydenham" name="SM626AR"/> </AFFECTED_OBJECTS> </RESTRICTIONS> <ARS rcs="Sydenham" entity_name="SM629AR" publish_type="ArsGroupState" control_state="AUTOMATIC" alarm_state="CLEAR"/> <NETREPORT rcs="SYDNEY" entity_name="BJN1" publish_type="NetReports" location="Bondi Junction" platform="#1"> <TRIP name="12-F" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="3245"> <STATION id="64" name="Blacktown"/> </DESTINATION> <STOPS msgid="3402"> <STATION id="23" name="Central"/> <STATION id="46" name="Strathfield"/> <STATION id="54" name="Paramatta"/> <STATION id="64" name="Blacktown"/> </STOPS> <EXPECTED arrival="2000-12-08 18:30:16" departure="2000-12-08 18:31:16"/> <SCHEDULED departure="2000-12-08 09:30:00"/> </TRIP> <TRIP name="108D" status="STOP" certainty="TIMETABLED" cars="6"> <DESTINATION msgid="3245"> <STATION id="34" name="Bondi Junction"/> </DESTINATION> <STOPS msgid="2694"> <STATION id="29" name="Kings Cross"/> <STATION id="34" name="Bondi Junction"/> </STOPS> <EXPECTED arrival="2000-12-08 09:40:00" departure="2000-12-08 18:33:16"/> <SCHEDULED departure="2000-12-08 09:40:00"/> </TRIP> <TRIP name="5--E" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="3245"> <STATION id="34" name="Bondi Junction"/> </DESTINATION> <STOPS msgid="1105"> <STATION id="29" name="Kings Cross"/> <STATION id="13" name="Central"/> </STOPS> <EXPECTED arrival="2000-12-08 09:50:00" departure="2000-12-08 18:35:16"/> <SCHEDULED departure="2000-12-08 09:50:00"/> </TRIP> <TRIP name="9--D" status="STOP" certainty="TIMETABLED" cars="8"> <DESTINATION msgid="3245"> <STATION id="34" name="HORNSBY"/> </DESTINATION> <STOPS msgid="2312"> <STATION id="13" name="Central"/> <STATION id="13" name="Strathfield"/> <STATION id="13" name="Epping"/> <STATION id="13" name="Hornsby"/> </STOPS>

Page 82: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 82 of 102

<EXPECTED arrival="2000-12-08 10:00:00" departure="2000-12-08 18:37:16"/> <SCHEDULED departure="2000-12-08 10:00:00"/> </TRIP> </NETREPORT>

<TIMETABLE_STATUS rcs="Sydney" entity_name="LOADED" publish_type="Timetable" timetable_id="D2808-SYD-DLY-MN-28-08-2000a" version="-1" type="DAILY" day="Monday" valid_from="2001-05-16 00:00:00" valid_to="2001-05-17 02:44:20"/> <TRACK_SEQUENCE_FUNCTION rcs="Hornsby" entity_name="CowanBankTSF" publish_type="AssetStatus" status_dm_bc="FAILURE" status_um_bc="NO_FAILURE" status_dm_hb="NO_FAILURE" status_um_hb="NO_FAILURE" state_valid="VALID"/> </PUBLISH> </RFS_PUBLISH>

9.2 Heartbeat message

The server provides heartbeat messages to communicate that connection to the server is still

alive, or, in the absence of a heartbeat message, not alive.

9.2.1 Heartbeat time

The heartbeat time is the time the heartbeat was sent from the server.

9.2.2 Heartbeat interval

The heartbeat interval is the frequency at which the heartbeat will be sent in milliseconds.

9.2.3 Name

The name attribute is HEARTBEAT.

9.2.4 Publish type

The publish type is SYSTEM.

9.2.5 Source

The Source is the “server such as OSS.

9.2.6 DTD

<!ELEMENT HEARTBEAT EMPTY> <!ATTLIST HEARTBEAT source CDATA #REQUIRED name (HEARTBEAT) "HEARTBEAT" publish_type (SYSTEM) "SYSTEM" heartbeat_time CDATA #REQUIRED heartbeat_interval CDATA #REQUIRED>

Table 35 – Values for heartbeat message

Parent Element

Element Name Attribute Name Data Type

Size Values

None <HEARTBEAT> Source VarChar 10 Name of source system, i.e. “OSS”

None <HEARTBEAT> Name Varchar 10 Name of message, i.e. “HEARTBEAT”

None <HEARTBEAT> publish_type VarChar 10 Publish type, i.e. “SYSTEM”

Page 83: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 83 of 102

Parent Element Name Attribute Name Data Size Values Element Type

None <HEARTBEAT> heartbeat_time DateTime 19 Time Heartbeat was created e.g. 2001-07-04 18:26:22

None <HEARTBEAT> heartbeat_interval Int 10 Frequency in millisecond e.g. 5000

9.2.7 Sample XML

<HEARTBEAT source="OSS" name="HEARTBEAT" publish_type="SYSTEM" heartbeat_time="2001-07-04 17:24:04" heartbeat_interval="5000"/>

9.3 Unsubscribe

This RailForm is used to unsubscribe specific subscription items without re-sending a

subscription request that will cause un-subscribing all current subscription items and re-

establishing a new subscription connection.

9.3.1 DTD

<!ELEMENT RFS_UNSUBSCRIBE (SESSION, UNSUBSCRIBE)> <!ATTLIST RFS_UNSUBSCRIBE

version CDATA #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)>

<!ELEMENT UNSUBSCRIBE (ENTITIES?, PROFILES?)> <!ELEMENT ENTITIES (ENTITY+)> <!ELEMENT ENTITY EMPTY> <!ATTLIST ENTITY rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT PROFILES (PROFILE+)> <!ELEMENT PROFILE (#PCDATA)>

Table 36 – Values for unsubscribe

Parent Element Element Name Attribute Name

Data Type

Size Values

Root <UNSUBSCRIBE>

<UNSUBSCRIBE> <ENTITIES>

<ENTITIES> <ENTITY> rcs VarChar 50 Rail Control System Name

<ENTITIES> <ENTITY> entity_name VarChar 50 Location name for Active Trips or Platform Id for Net Report

<ENTITIES> <ENTITY> publish_type VarChar 50 Type of published information. E.g. OccupyingTrips, NetReports, TimetableStatus, etc.

<UNSUBSCRIBE> <PROFILES>

Page 84: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Parent Element Element Name Attribute Data Size Values Name Type

<PROFILES> <PROFILE> VarChar 255 Profile name created by the Server Administrator e.g. MetroActiveTrips, SydneyRcsActiveTrips, StrathfieldRcsActiveTrips, MetronetActiveTrips, etc.

© State of NSW through Transport for NSW Page 84 of 102

9.3.2 Sample XML

<?xml version="1.0"?>

<!DOCTYPE RFS_UNSUBSCRIBE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_UNSUBSCRIBE.DTD"> <RFS_UNSUBSCRIBE version="1.0"> <SESSION> <SESSION_ID timeout="60">xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE> </USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <UNSUBSCRIBE> <ENTITIES> <ENTITY rcs="Sydney" entity_name="MART01" publish_type="NetReports"/> </ENTITIES> <PROFILES> <PROFILE>StrathfieldRcsActiveTrips</PROFILE> </PROFILES> </UNSUBSCRIBE> </RFS_UNSUBSCRIBE>

10. OSS information update

External systems can update information to OSS if they have appropriate permissions.

Currently OSS support update of Train location information and system status.

Information can be sent to the OSS by calling the Rail Control System (RCS) Update command

and sending the update XML. The URL to update information to the OSS is

http://ricoss/rodnet/rfs_request_rcs_update.asp.

Upon receiving an RCS update request, the OSS will respond with an XML response (defined in

Appendix A), which contains a status result. The status will equal 0 if the request was

successful, otherwise it will be non-zero and there may a response message. Error status

numbers are defined in Appendix A.

10.1 RCS update request

The RCS update request allows information to be update to the OSS via external systems.

10.1.1 DTD

<!ELEMENT RFS_REQUEST_RCS_UPDATE (SESSION, RCS_UPDATE)> <!ATTLIST RFS_REQUEST_RCS_UPDATE version (1.0) #REQUIRED> <!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID timeout CDATA #REQUIRED>

Page 85: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 85 of 102

<!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RCS_UPDATE (RAIL_CONTROL_SYSTEM*, TRIPS_AT_LOCATION*, NETREPORT*)*> <!ATTLIST RCS_UPDATE msgid CDATA #REQUIRED> <!ELEMENT RAIL_CONTROL_SYSTEM EMPTY> <!ATTLIST RAIL_CONTROL_SYSTEM rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED connection_status (CONNECTED|DISCONNECTED) #REQUIRED last_update CDATA #REQUIRED timeout CDATA #IMPLIED> <!ELEMENT TRIPS_AT_LOCATION (TRIP*)> <!ATTLIST TRIPS_AT_LOCATION rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #REQUIRED> <!ELEMENT TRIP (DESTINATION|STOPS|EXPECTED|SCHEDULED|FORMS_TRIP|FORMED_BY_TRIP)*> <!ATTLIST TRIP name CDATA #REQUIRED trip_instance CDATA #IMPLIED status (NULL|SPECIAL|PASS|STOP|TERMINATE) "NULL" certainty CDATA #IMPLIED cars CDATA #IMPLIED stock_num CDATA #IMPLIED valid_trip CDATA #IMPLIED> <!ELEMENT DESTINATION (STATION?)> <!ATTLIST DESTINATION msgid CDATA #REQUIRED> <!ELEMENT STOPS (STATION*)> <!ATTLIST STOPS msgid CDATA #REQUIRED> <!ELEMENT EXPECTED EMPTY> <!ATTLIST EXPECTED arrival CDATA #REQUIRED departure CDATA #IMPLIED> <!ELEMENT SCHEDULED EMPTY> <!ATTLIST SCHEDULED arrival CDATA #REQUIRED departure CDATA #IMPLIED> <!ELEMENT FORMS_TRIP EMPTY> <!ATTLIST FORMS_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT FORMED_BY_TRIP EMPTY> <!ATTLIST FORMED_BY_TRIP name CDATA #REQUIRED trip_instance CDATA #REQUIRED> <!ELEMENT NETREPORT (TRIP)*> <!ATTLIST NETREPORT rcs CDATA #REQUIRED entity_name CDATA #REQUIRED publish_type CDATA #IMPLIED location CDATA #IMPLIED

platform CDATA #IMPLIED>

10.1.2 Sample XML

<?xml version="1.0"?>

<!DOCTYPE RFS_REQUEST_RCS_UPDATE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_REQUEST_RCS_UPDATE.DTD"> <RFS_REQUEST_RCS_UPDATE version="1.0"> <SESSION> <SESSION_ID timeout="20">178A64909BDB48F582326477937DA966</SESSION_ID> <USER_VALUES> <VALUE key="testkey-1"> test 1 </VALUE> <VALUE key="testkey-2"> test 2 </VALUE> <VALUE key="testkey-n"> test n </VALUE>

Page 86: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 86 of 102

</USER_VALUES> <SERVER_VALUES> <VALUE key="testkey-a"> test a </VALUE> <VALUE key="testkey-b"> test b </VALUE> <VALUE key="testkey-c"> test c </VALUE> </SERVER_VALUES> </SESSION> <RCS_UPDATE msgid="Wollongong;yyyy-mm-dd hh:mm:ss;sequence#"> <RAIL_CONTROL_SYSTEM rcs="Wollongong" entity_name="rcs_status" publish_type="SystemStatus" connection_status="CONNECTED" last_update="2001-10-09 14:32:15" timeout="60"/> <TRIPS_AT_LOCATION rcs="Wollongong" entity_name="1204" publish_type="OccupyingTrips"/> <TRIPS_AT_LOCATION rcs="Wollongong" entity_name="1205" publish_type="OccupyingTrips"> <TRIP name="108D" trip_instance="1" status="STOP" certainty="OCCUPIED" cars="6" stock_num="103588" valid_trip="True"> <DESTINATION msgid="123"/> <STOPS msgid="456"/> <EXPECTED arrival="2001-10-08 10:04:20" departure="2001-10-08 10:05:20"/> <SCHEDULED arrival="2001-10-08 10:02:15" departure="2001-10-08 10:03:15"/> </TRIP> </TRIPS_AT_LOCATION> <TRIPS_AT_LOCATION rcs="Wollongong" entity_name="321" publish_type="OccupyingTrips"/> <TRIPS_AT_LOCATION rcs="Wollongong" entity_name="322" publish_type="OccupyingTrips"> <TRIP name="32-K" trip_instance="1" status="PASS" certainty="OCCUPIED" cars="4" stock_num="105241" valid_trip="True"> <DESTINATION msgid="123"/> <STOPS msgid="456"/> <EXPECTED arrival="2001-10-08 10:04:21" departure="2001-10-08 10:04:21"/> <SCHEDULED arrival="2001-10-08 10:04:15" departure="2001-10-08 10:04:15"/> </TRIP> </TRIPS_AT_LOCATION> <NETREPORT rcs="Wollongong" entity_name="WOL1"> <TRIP name="686R" trip_instance="2" certainty="ROUTE"> <EXPECTED arrival="2012-09-24 18:21:11" /> </TRIP> <TRIP name="709L" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 18:36:11" /> </TRIP> <TRIP name="36-T" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 19:06:11" /> </TRIP> <TRIP name="50-U" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 19:21:11" /> </TRIP> <TRIP name="706R" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 19:36:11" /> </TRIP> <TRIP name="63-S" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 19:51:11" /> </TRIP> <TRIP name="684R" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 20:06:11" /> </TRIP> <TRIP name="709N" trip_instance="1" certainty="TIMETABLED"> <EXPECTED arrival="2012-09-24 20:21:11" /> </TRIP> </NETREPORT> </RCS_UPDATE> </RFS_REQUEST_RCS_UPDATE>

10.2 RCS update response

The RCS response is used to acknowledge that an update is successful.

10.2.1 DTD

<!ELEMENT RFS_RESPONSE_RCS_UPDATE (RESPONSE_RESULT)> <!ATTLIST RFS_RESPONSE_RCS_UPDATE version CDATA #REQUIRED>

<!ELEMENT SESSION (SESSION_ID, USER_VALUES?, SERVER_VALUES?)> <!ELEMENT SESSION_ID (#PCDATA)> <!ATTLIST SESSION_ID

Page 87: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 87 of 102

timeout CDATA #REQUIRED> <!ELEMENT USER_VALUES (VALUE+)> <!ELEMENT VALUE (#PCDATA)> <!ATTLIST VALUE key CDATA #REQUIRED> <!ELEMENT SERVER_VALUES (VALUE+)> <!ELEMENT RESPONSE_RESULT (RESPONSE_MESSAGE*)> <!ATTLIST RESPONSE_RESULT status CDATA #REQUIRED> <!ELEMENT RESPONSE_MESSAGE (#PCDATA)>

Page 88: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 88 of 102

10.2.2 Sample XML

<?xml version="1.0"?>

<!DOCTYPE RFS_RESPONSE_RCS_UPDATE SYSTEM "http://RICOSS/RodNet/Dtd/RFS_RESPONSE_RCS_UPDATE.DTD"> <SESSION> <SESSION_ID timeout="20">23XY239SDKWSEPDS90303034898SKOJ2</SESSION_ID></SESSION> <RFS_RESPONSE_RCS_UPDATE version="1.0"> <RESPONSE_RESULT status="0"> <RESPONSE_MESSAGE> </RESPONSE_MESSAGE> </RESPONSE_RESULT> </RFS_RESPONSE_RCS_UPDATE>

Page 89: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 89 of 102

Appendix A - Status codes in the server’s response messages

A status code is always included in every response message from the server. It is the ‘status’

attribute of the <RESPONSE_RESULT> element. The status code is used to indicate

“SUCCESS” if zero or “FAIL” for non-zero value. It also helps developers to identify appropriate

actions required for predictable errors.

Sample XML <RESPONSE_RESULT status="3"> <RESPONSE_MESSAGE>Invalid Login UserId and/or Password.</RESPONSE_MESSAGE> </RESPONSE_RESULT>

A.2 Type of response status code

A.2.1 Common status codes

Applicable to all applications (Application independent)

Status codes range from -1 to 4999

Table 37 – Common status codes

Code Description Action required

-1 Unknown Error. It is an error message when application runtime error occurs.

Check error message and contact the server Administrator for further information.

0 No Error The server returned response message successfully on your request.

1 Invalid XML message received. Check and validate with DTD associated.

2 Insufficient data in the request message. It occurs when some of mandatory input data is missing.

The response message information.

will provide additional

3 Invalid User Id and/or Password. Check the User Id and Password and re-send a login request.

4 Invalid Session Id. It occurs when server receives a session id which does not exist in the system.

Re-send a login request.

5 Session expired. It occurs when server receives a session id which does exist in the system but expired.

Re-send a login request.

6 Security violation. It occurs when clients try to use a restricted RailForm with a permission.

Contact the server administrator to get an access privilege.

7 A login has been disabled as a result of invalid login attempts for more than 4 times

Contact the server administrator to enable the login user-id

8 Check the Error Message. It is a comprehensive error message generated by an application for known conditions.

Self-explanatory error message is provided in a response message.

9 Reserved Reserved

10 Invalid Command Contact the server administrator.

11 Requested Command is Offline. Contact the server administrator.

12 Requested Command is not available yet. Contact the server administrator.

Page 90: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 90 of 102

Code Description Action required

13 You do not have the access right to the command.

Contact the server administrator to get access right.

14 Reserved

: :

4999 Reserved

A.2.2 Application dependent status codes

Applicable to a specific application

Need to be defined for each application

Status codes range from 5000 to 9999

Table 38 – Application dependent status codes

Application Name Status Code Description

Subscription 7001 Subscription Queue does not exist.

7002 Subscription Queue has been deleted

7003 Could not open Subscription Item

7004 No Subscription Items found

Page 91: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 91 of 102

Appendix B - Trip certainty values

Table 39 – Trip certainty values

Code Value Description

0 NONE It indicates that the associated trip will not pass the associated location. This value is set to trip locations which have been by-passed or not reached by a train ending short of its destination.

1 CANCELLED It indicates that the associated location is part of the trip's timetabled path, but it is not expected to be traversed because the trip's plan has been cancelled.

20 TIMETABLED It indicates that the associated location is part of the trip's timetabled path.

21 ACKNOWLEDGED It indicates that the associated location was manually or automatically acknowledged to travel this location in a particular order.

22 ROUTE It indicates that the associated train is approaching, has a path set to this location and the path includes at least one set route or junction.

23 PHYSICAL_MIN

24 … 98

PHYSICAL_XX

99 PHYSICAL_MAX

PHYSICAL_MIN, PHYSICAL_XX and PHYSICAL_MAX is a range of physical commitment. For PHYSICAL_XX, XX is a number between 24 and 98 inclusive e.g. PHYSICAL_94. It indicates that the associated train is approaching and has a path set to this location, which does not include any routes or junctions. That is, the train cannot move in any other direction but towards this location. A value of PHYSICAL_MAX indicates that this will be the next train through this location. A lesser value indicates that there are other trains approaching in front of the associated train.

100 OCCUPIED It indicates that the associated train has reached this location. It may be currently at or passed this location. The estimated arrival time indicates the time at which the train reached this location.

Page 92: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 92 of 102

Appendix C - Asset status attributes

C.1 Sample XML <TRACK rcs="Strathfield" entity_name="ST11.20BT" publish_type="AssetStatus" occupancy="UNOCCUPIED" disregarded="TRUE"/> <SIGNAL rcs="Strathfield" entity_name="ST336" publish_type="AssetStatus" signal_aspect="STOP"/> <ROUTE rcs="Strathfield" entity_name="ST801(M)" publish_type="AssetStatus" route_status="NOT_SET_AND_AVAILABLE"/> <AUTO_RECLEAR rcs="Strathfield" entity_name="ST801AR" publish_type="AssetStatus" auto_state="NOT_SET"/> <TRACK_TIMER rcs="Strathfield" entity_name="ST803B" publish_type="AssetStatus" timer_status="NOT_EXPIRED"/>

C.2 CMD_MAX

Current value is 2.

Table 40 – Values for Asset status attributes

Id ASSET TYPE Id Attribute Value Attribute value

0 SIGNAL

0 signal_aspect

0 1 2 3 4 5

INDETERMINATE PROCEED STOP STOP_LOCKED CLEARING FAILED

1 state_valid 0 1

INVALID VALID

1 REPLACEMENT_SIGNAL

0 Signal_aspect

0 1 2 3 4 5

INDETERMINATE PROCEED STOP STOP_LOCKED CLEARING FAILED

1 replacement_state

0 1 2 3 4 5 6

INDETERMINATE IN_REPLACEMENT GOING_TO_REPLACEMENT IN_AUTO GOING_TO_AUTO FAILED_IN_REPLACEMENT FAILED_IN_AUTO

2 state_valid 0 1

INVALID VALID

2 AUTO_SIGNAL Distributed As SIGNAL

3 CONTROLLED_SIGNAL Not Distributed

4 ENTRANCE_EXIT_ROUTE Not Distributed

5 ONE_CONTROL_ROUTE Not Distributed

6 TRACK 0 occupancy 0 1 2

INDETERMINATE OCCUPIED UNOCCUPIED

Page 93: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Id ASSET TYPE Id Attribute Value Attribute value

1 disregarded 0 1

FALSE TRUE

2 state_valid 0 1

INVALID VALID

0 INDETERMINATE

7 TRACK_TIMER

0 timer_status 1 2

EXPIRED NOT_EXPIRED

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 NORMAL 2 REVERSE

0 position 3 4 5 6

GOING_TO_NORMAL GOING_TO_REVERSE FAILED_INPUTS FAILED_WHILE_MOVING

0 INDETERMINATE

8 POINTS

1 lock_status 1 2

LOCKED FREE

2 last_issued_command

CMD_MAX+0

CMD_MAX+1

CMD_MAX+2

SET_NORMAL SET_REVERSE SET_CENTRE INDETERMINATE

CMD_MAX+3

3 state_valid 0 1

INVALID VALID

0 INDETERMINATE

9 GROUND_FRAME

0 position 1 2 3

NORMAL NOT_NORMAL FAILED

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 SET

10 ROUTE

0 route_status

2 3 4 5 6

NOT_SET_AND_AVAILABLE NOT_SET_AND_NOT_AVAILABLE SETTING CANCELLING FAILED

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 NORMAL 2 REVERSE

11 TRAINSTOP 0 state 3 4 5 6

GOING_TO_NORMAL GOING_TO_REVERSE FAILED_INPUTS FAILED_WHILE_MOVING

© State of NSW through Transport for NSW Page 93 of 102

Page 94: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 94 of 102

Id ASSET TYPE Id Attribute Value Attribute value

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

12 EARTH_LEAKAGE_DETECTOR

0 leakage 1 2

DETECTED NOT_DETECTED

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

13 SIGNAL_FILAMENT

0 filament_health 1 2

FAILED OK

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

14 SIGNAL_LAMP

0 lamp_health 1 2

FAILED OK

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

15 AIR_COMPRESSOR

0 pressure 1 2

LOW NOT_LOW

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

16 DC_POWER_SUPPLY

0 availability 1 2 3

NORMAL WARNING ALARM

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 NORMAL

17 AC_POWER_SUPPLY

0 combined_status 2 3 4 5

NORMAL_SUPPLY_FAILED EMERGENCY_SUPPLY_FAILED ALARM FAILED

1 power 0 1 2

UN (INDETERMINATE) A (AVAILABLE) NA (NOT_AVAILABLE)

2 Normal 0 1 2

UN (INDETERMINATE) A (AVAILABLE) NA (NOT_AVAILABLE)

3 emergency 0 1 2

UN (INDETERMINATE) A (AVAILABLE) NA (NOT_AVAILABLE)

4 state_valid 0 1

INVALID VALID

Page 95: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 95 of 102

Id ASSET TYPE Id Attribute Value Attribute value

0 INDETERMINATE 1 LOCKED_KEY_IN 2 RELEASED_KEY_IN

18 RELEASING_SWITCH

0 state 3 4 5

RELEASED_KEY_OUT LOCKING_KEY_OUT FAILED

6 RELEASING_KEY_IN 7 LOCKING_KEY_IN

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 0 auto_state 1 SET

19 AUTO_RECLEAR 2 NOT_SET

1 state_valid 0 1

INVALID VALID

0 NORMAL

20 FIRE_SYSTEM

0 status 1 2 3

FIRE_DETECTED FAULT INDETERMINATE

1 state_valid 0 1

INVALID VALID

0 NORMAL

21 SECURITY_SYSTEM

0 status 1 2 3

ALERT FAULT INDETERMINATE

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE

22 CONTROL_PANEL

0 control_panel_ status

1 2 3 4

LOCAL REMOTE FAILED TRANSITION

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 NOT_IN_USE 2 WAITING_IN_USE

23 RING_CIRCUIT

0 ring_circuit_status 3 4 5

MACHINE_IN_USE WAITING_FINISH FINISHING

6 FAILED

1 state_valid 0 1

INVALID VALID

24 TELEMETRY_IO Not distributed

25 RTU

0 health 0 [Integer value]

1 state_valid 0 1

INVALID VALID

26 SYSTEM 0 status 0 1

STANDBY MASTER

1 health [Integer value]

2 band 0 UNKNOWN

Page 96: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 96 of 102

Id ASSET TYPE Id Attribute Value Attribute value

3 computer_name [String value]

0 INDETERMINATE 0 state 1 ENABLED

27 EMERGENCY_SHUNT_FUNCTION 2 DISABLED

1 state_valid 0 1

INVALID VALID

28 FLOOD_DETECTOR

0 warning_indication 0 1 2

BIT_INDETERMINATE BIT_NORMAL BIT_ACTIVE

1 alarm_indication 0 1 2

BIT_INDETERMINATE BIT_NORMAL BIT_ACTIVE

2 override_indication 0 1 2

BIT_INDETERMINATE BIT_NORMAL BIT_ACTIVE

3 state_valid 0 1

INVALID VALID

0 INDETERMINATE 0 state 1 ON

29 GENERAL_ALARM 2 OFF

1 state_valid 0 1

INVALID VALID

0 INDETERMINATE 1 PROCEED

0 signal_aspect 2 3 4

STOP STOP_LOCKED CLEARING

30 AUTO_SIGNAL_WITH_A_LIGHT 5 FAILED

0 INDETERMINATE 1 state 1

2 AUTO_OFF AUTO_ON

2 state_valid 0 1

INVALID VALID

31 AUTO_SIGNAL_GROUP Not distributed

32 CONTROL_STATUS_PANEL Not distributed

0 INDETERMINATE 1 NORMAL

0 status 2 APPROACHING

33 DIRECTION_INDICATOR 3 4

LEAVING FAILED

1 state_valid 0 1

INVALID VALID

0 NORMAL

34 LEVEL_CROSSING

0 status 1 2 3

WARNING ALARM INDETERMINATE

1 state_valid 0 1

INVALID VALID

Page 97: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 97 of 102

Id ASSET TYPE Id Attribute Value Attribute value

35 HIGH_LOAD_DETECTOR

0 status

0 1 2 3

INDETERMINATE HIGH_LOAD NORMAL FAILED

1 state_valid 0 1

INVALID VALID

36 DUAL_CONTROL

0 status 0 1 2

INDETERMINATE ACCEPTED NOT_ACCEPTED

1 availability 0 1 2

INDETERMINATE AVAILABLE NOT_AVAILABLE

2 state_valid 0 1

INVALID VALID

37 CLOSING_LEVER

0 status 0 1 2

INDETERMINATE SWITCHED_IN SWITCHED_OUT

1 state_valid 0 1

INVALID VALID

38 HALF_PILOT_STAFF

0 status 0 1 2

INDETERMINATE IN_LOCK OUT_OF_LOCK

1 state_valid 0 1

INVALID VALID

39 VENTILATION_LOCK

0 state 0 1 2

INDETERMINATE ENABLED DISABLED

1 state_valid 0 1

INVALID VALID

40 NON_STOPPING_TRAIN_FUNCTION

0 state 0 1 2

INDETERMINATE ENABLED DISABLED

1 state_valid 0 1

INVALID VALID

41 DIRECTION_OVERRIDE

0 state 0 1 2

INDETERMINATE SET TIMING NOT_SET

1 state_valid 0 1

INVALID VALID

42 TRACK_SEQUENCE_FUNCTION

0 status_dm_bc 0 1 2

INDETERMINED FAILURE NO_FAILURE

1 status_um_bc 0 1 2

INDETERMINED FAILURE NO_FAILURE

2 status_dm_hb 0 1 2

INDETERMINED FAILURE NO_FAILURE

3 status_um_hb 0 1 2

INDETERMINED FAILURE NO_FAILURE

Page 98: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 98 of 102

Id ASSET TYPE Id Attribute Value Attribute value

4 state_valid 0 1

INVALID VALID

Page 99: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 99 of 102

Appendix D - Alarm types

D.1 Sample XML <ALARM rcs="Sydenham" entity_name="Sydenham:SM629BT|AXN_TRK_OCC_SEQ" publish_type="AlarmStatus" alarm_name="SM629BT" alarm_type="AXN_TRK_OCC_SEQ" alarm_instance="0" alarm_severity="1" alarm_set_status="SET" alarm_state="Set" alarm_time="2002-10-02 14:23:11">Track SM629BT Occupied Out of Sequence.</ALARM>

Table 41 – Alarm types

Alarm type Alarm PersistenceID Type Descriptions

ARS_AUTO_RECLEAR_SET TRANSIENT (ARS) Auto reclear became set with ARS enabled.

ARS_CANNOT_SET USER_CLEARED (ARS) ARS cannot set due to unavailable path.

ARS_GROUP_BLOCK TRANSIENT (ARS) ARS group has block applied to path.

ARS_NEXT_TRN_NOT_TT USER_CLEARED (ARS) Next train at ARS queue is not timetabled.

ARS_SCHEDULE_FAIL TRANSIENT (ARS) Unable to retrieve schedule details from Dynamic Plan.

ARS_TRN_MUST_WAIT TRANSIENT (ARS) Next ARS train must wait for another train to approach.

ARS_TRN_PATH_FAIL TRANSIENT (ARS) Next ARS train failed to set path.

ARS_TRN_WAITING TRANSIENT (ARS) An ARS train is already waiting for an overdue train.

ARS_TRN_WILL_WAIT TRANSIENT (ARS) Next ARS train will start waiting for an overdue train.

AXN_AC_PWR SYSTEM_CLEARED (ACTION) AC power supply system cleared alarms (4).

AXN_AIR_COMP SYSTEM_CLEARED (ACTION) Air Compressor system cleared alarms (2).

AXN_ALL_TRKS_UNOCC USER_CLEARED (ACTION) All track circuits for a train became unoccupied.

AXN_BLK_RCLR_ENBLD USER_CLEARED (ACTION) Blocked auto reclear became enabled.

AXN_BLK_RCLR_SIG_PRC USER_CLEARED (ACTION) Blocked auto reclear has signal aspect proceed.

AXN_BLK_RTE_SET USER_CLEARED (ACTION) Blocked route became set.

AXN_BLK_SIG_PRC USER_CLEARED (ACTION) Blocked signal has proceed aspect.

AXN_DC_PWR SYSTEM_CLEARED (ACTION) DC power supply system cleared alarms (3).

AXN_EARTH_LD SYSTEM_CLEARED (ACTION) Earth leakage detector system cleared alarms (2).

AXN_FIRE_SYS SYSTEM_CLEARED (ACTION) Fire system system cleared alarms (3).

AXN_FLOOD_SYS SYSTEM_CLEARED (ACTION) Flood detector system cleared alarms (8).

Page 100: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 100 of 102

Alarm type Alarm PersistenceID Type Descriptions

AXN_FRINGE_BOX USER_CLEARED (ACTION) Train entering the system at fringe area.

AXN_GRND_FRM SYSTEM_CLEARED (ACTION) Ground frame system cleared alarms (2).

AXN_GENERAL USER_CLEARED (ACTION) General Alarms - Interlocking, Dupline, Level Crossing etc (20).

AXN_LOC_CTL_PAN USER_CLEARED (ACTION) Local control panel alarms (2).

AXN_PNTS_BLK_NRM_REV USER_CLEARED (ACTION) Points blocked normal were detected reverse.

AXN_PNTS_BLK_REV_NRM USER_CLEARED (ACTION) Points blocked reverse were detected normal.

AXN_POINTS SYSTEM_CLEARED (ACTION) Points system cleared alarms (3).

AXN_REL_SW SYSTEM_CLEARED (ACTION) Releasing switch system cleared alarms (2).

AXN_RING_CCT SYSTEM_CLEARED (ACTION) Ring circuit system cleared alarms (2).

AXN_ROUTE SYSTEM_CLEARED (ACTION) Route system cleared alarms (2).

AXN_RPLC_SIG_PRC USER_CLEARED (ACTION) Replaced automatic signal has proceed aspect (MONITOR).

AXN_RTU SYSTEM_CLEARED (ACTION) Remote telemetry unit system cleared alarms (3).

AXN_SEC_SYS SYSTEM_CLEARED (ACTION) Security system system cleared alarms (3).

AXN_SIG_FAIL_CLEAR USER_CLEARED (ACTION) Automatic signal failed to clear.

AXN_SIG_FIL_GRP SYSTEM_CLEARED_PERIODIC (ACTION) Signal filament group system cleared alarms (2).

AXN_SIG_LMP_GRP SYSTEM_CLEARED_PERIODIC (ACTION) Signal lamp group system cleared alarms (2).

AXN_SIGNAL SYSTEM_CLEARED (ACTION) Signal system cleared alarms (2).

AXN_TRK_OCC_SEQ USER_CLEARED (ACTION) Track cccupied out of sequence.

AXN_TRK_UNOCC_SEQ USER_CLEARED (ACTION) Track unoccupied out of sequence.

AXN_TRN_PSSD_SIG TRANSIENT (ACTION) Train passed signal at stop (MONITOR).

AXN_TRN_REV USER_CLEARED (ACTION) Train reversing at location.

AXN_TRN_STOP SYSTEM_CLEARED (ACTION) Train stop system cleared alarms

AXN_TSTOP_SIG_SYNC USER_CLEARED (ACTION) Train stop and signal out of sync (MONITOR).

STPS_ADJ_RCS_CONNECTION USER_CLEARED (STPS) Dynamic plan lost an adjacent RCS Connection.

Page 101: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

© State of NSW through Transport for NSW Page 101 of 102

Alarm type Alarm PersistenceID Type Descriptions

TT_CONVERT_FAIL USER_CLEARED (TIMETABLES) Error converting a nodal timetable to locational timetable.

TT_LOAD_FAIL USER_CLEARED (TIMETABLES) Error loading timetable.

TT_REPLCMNT_ARRIVED USER_CLEARED (TIMETABLES) Notification that a replacement timetable has arrived.

TT_REPLCMNT_ERROR USER_CLEARED (TIMETABLES) Error replacing timetable.

TT_STN_ARRIVED USER_CLEARED (TIMETABLES) Standard train notice has arrived notification.

TT_STN_ERROR USER_CLEARED (TIMETABLES) Error applying standard train notice to timetable.

TWS_HEALTH_WORSENED TRANSIENT_SYSTEM_CLEARED (TWS) System health message.

TWS_INTERNAL TRANSIENT (TWS) Generic workstation user cleared alarm.

TWS_RCS_CONNECTION_FAILED

TRANSIENT_SYSTEM_CLEARED(TWS) Workstation lost RCS connection.

AXN_SIG_PRC_NO_RTE USER_CLEARED (ACTION) Signal At Proceed Has No Route Set

AXN_MULTI_RTE_SET USER_CLEARED (ACTION) Multiple Routes Set From Signal

TWS_STPS_CONNECTION_FAILED

TRANSIENT_SYSTEM_CLEARED(TWS) Workstation lost TPS connection.

ARS_GROUP_CONTROL USER_CLEARED (ARS) ARS Group Control Lost.

AXN_BLK_ERR_STATE USER_CLEARED (STPS) Signalling command failed because of the restriction status

AXN_OVERRIDE_EXPIRED USER_CLEARED (STPS) STOP_AND_BLOCK override timeout

AXN_RSTR_OUT_OF_SYNCH_LOCAL

USER_CLEARED (STPS) Synchronisation between run-time data and restriction database has failed

AXN_LEVEL_CROSSING SYSTEM_CLEARED (ACTION) Level Crossing system cleared alarms (3).

AXN_HIGH_LOAD_DETECTED SYSTEM_CLEARED (ACTION) High Load Detection system cleared alarm.

AXN_DIRECTION_IND USER_CLEARED (ACTION) Direction Indicator user cleared alarm.

AXN_GENERAL_SYS_CLRD SYSTEM_CLEARED (ACTION) System cleared general alarm.

AXN_HIGH_LOAD_FAILED SYSTEM_CLEARED (ACTION) High Load Failure system cleared alarm.

ARS_SEQ_BLOCK USER_CLEARED (ARS) Stored path has block applied to a required route.

ARS_SEQ_LOCAL USER_CLEARED (ARS) Stored path has local control panel not in remote.

ARS_SEQ_FAIL USER_CLEARED (ARS) Stored path failed to set a required route.

AXN_TDM_BULK_UPDATE USER_CLEARED (STPS) An expected TDM bulk update was not received.

Page 102: Signalling Control Systems Interface Requirements€¦ · A RailNet gateway can be implemented as a single or dual sided system, if it is implemented as a dual sided system it will

Sup

erse

ded

by T

HR

SC

012

51 S

P V

2.0 T HR SC 01251 SP

Signalling Control Systems Interface Requirements Version 1.0

Effective Date: 07 May 2014

Alarm type Alarm PersistenceID Type Descriptions

AXN_TDM_CONN_STS USER_CLEARED (STPS) Various alarms related to TDM connection status.

AXN_TDM_HEART_BEAT USER_CLEARED (STPS) Master TDM heart beat is missing.

TWS_ASSET_UPDATE_BLOCKED

SYSTEM_CLEARED (TWS) Workstation blocked processing signalling distributions.

© State of NSW through Transport for NSW Page 102 of 102