BSMD NSW Portal aktueller Stand

This commit is contained in:
Daniel Schick 2015-03-03 06:43:45 +00:00
parent 3bae67796c
commit 45f8447afd
39 changed files with 22006 additions and 0 deletions

BIN
NSW.rdp

Binary file not shown.

Binary file not shown.

Binary file not shown.

BIN
WETRIS_Server.rdp Normal file

Binary file not shown.

View File

@ -0,0 +1,22 @@
Zugang zu den BSMD-Servern in Buxtehude für Daniel Schick
Fortigate-Zugang
User: Daniel.Schick
PW: wv%63D#mDgI6JKejGuUd
Server: 87.139.254.249:10443
BSMD-Server in Buxtehude:
SMAD01 [Domain Controller], 192.168.2.2, vorher: www.schiffsmelder.com:41622
SMWET01 [WETRIS Server], 192.168.2.3, vorher:www.schiffsmelder.com:41623
SMWET02 [WETRIS Test], 192.168.2.6
SMNSW01 [NSW-Server], 192.168.2.4, vorher: www.schiffsmelder.com:41624
SMSPLASH01 [Dashface-Server], 192.168.2.5, vorher: www.schiffsmelder.com:41625
für alle Server:
User: Administrator
PW: $chegVAN99!

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@ -0,0 +1,9 @@
RESTORE DATABASE nsw
FROM DISK = N'E:\work\bsmd\nsw\nsw_ohne_HAZA_V1'
WITH FILE = 1,
MOVE N'nsw' TO N'E:\data\DB\nsw.mdf',
MOVE N'nsw_LOG' TO N'E:\data\DB\nsw.log',
NOUNLOAD,
REPLACE,
STATS = 10
GO

View File

@ -0,0 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
</configSections>
<connectionStrings>
<add name="nswEntities" connectionString="metadata=res://*/nsw.csdl|res://*/nsw.ssdl|res://*/nsw.msl;provider=System.Data.SqlClient;provider connection string=&quot;data source=(localdb)\Projects;initial catalog=nsw;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
</connectionStrings>
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>

View File

@ -0,0 +1,138 @@
using System;
using System.Data;
using System.Data.SqlClient;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bsmd.database
{
/// <summary>
/// Basisklasse aller Nachrichtentypen, zentrale Klasse für die NSW App
/// </summary>
public class Message : IDatabaseEntity
{
private Guid messageHeaderId;
private MessageCore messageCore;
private ReportingParty reportingParty;
#region Enumerations
public enum NotificationClass
{
VISIT, TRANSIT, NOA_NOD, ATA, ATD, SEC, POBA, POBD, NAME, TIEFA, TIEFD,
BKRA, BKRD, STAT, LADG, INFO, SERV, PRE72H, MDH, WAS, CREW, PAS, BPOL, TOWA, TOWD, HAZA, HAZD
}
public enum MessageStatus
{ ACCEPTED, REJECTED }
#endregion
#region Properties
/// <summary>
/// Primärschlüssel
/// </summary>
public Guid MessageHeaderId { get { return this.messageHeaderId; } }
/// <summary>
/// Dieser Wert wird vom NSW / HIS vergeben
/// </summary>
public string ClientRequestId { set; get; }
/// <summary>
/// Referenz zur eigentlichen Schiffankunft
/// </summary>
public MessageCore MessageCore { get { return this.messageCore; } }
public Guid? MessageId { get; set; }
public DateTime? SentAt { get; set; }
public DateTime? ReceivedAt { get; set; }
public DateTime? RequestedAt { get; set; }
public bool Reset { get; set; }
public bool Cancel { get; set; }
public MessageStatus? Status { get; set; }
/// <summary>
/// Nachrichtentyp der abgeleiteten Meldeklassen
/// </summary>
public NotificationClass MessageNotificationClass { get; set; }
/// <summary>
/// Der Meldende
/// </summary>
public ReportingParty ReportingParty { get { return this.reportingParty; } }
#endregion
#region public virtual methods
#endregion
#region IDatabaseEntity implementation
public bool IsNew
{
get { throw new NotImplementedException(); }
}
public void Save(System.Data.IDbConnection connection)
{
SqlConnection sqlCon = connection as SqlConnection;
if (sqlCon == null) return;
if (this.IsNew)
{
string query = "INSERT INTO MessageHeader (ClientRequestId, MessageCoreId, MessageId, SentAt, ReceivedAt, RequestedAt, NotificationClass, Reset, Cancel, Status, ReportingPartyId) " +
"VALUES (@CLIENTREQUESTID, @MESSAGECOREID, @MESSAGEID, @SENTAT, @RECEIVEDAT, @REQUESTEDAT, @NOTIFICATIONCLASS, @RESET, @CANCEL, @STATUS, @REPORTINGPARTYID)";
SqlCommand cmd = new SqlCommand(query, sqlCon);
if (this.ClientRequestId != null)
cmd.Parameters.AddWithValue("@CLIENTREQUESTID", this.ClientRequestId);
else
cmd.Parameters.AddWithValue("@CLIENTREQUESTID", DBNull.Value);
cmd.Parameters.AddWithValue("@MESSAGECOREID", this.MessageCore.Id);
if (this.MessageId.HasValue)
cmd.Parameters.AddWithValue("@MESSAGEID", this.MessageId.Value);
else
cmd.Parameters.AddWithValue("@MESSAGEID", DBNull.Value);
if (this.SentAt.HasValue)
cmd.Parameters.AddWithValue("@SENTAT", this.SentAt.Value);
else
cmd.Parameters.AddWithValue("@SENTAT", DBNull.Value);
if (this.ReceivedAt.HasValue)
cmd.Parameters.AddWithValue("@RECEIVEDAT", this.ReceivedAt.Value);
else
cmd.Parameters.AddWithValue("@RECEIVEDAT", DBNull.Value);
if (this.RequestedAt.HasValue)
cmd.Parameters.AddWithValue("@REQUESTEDAT", this.RequestedAt.Value);
else
cmd.Parameters.AddWithValue("@REQUESTEDAT", DBNull.Value);
cmd.Parameters.AddWithValue("@NOTIFICATIONCLASS", (int) this.MessageNotificationClass);
cmd.Parameters.AddWithValue("@RESET", this.Reset);
cmd.Parameters.AddWithValue("@CANCEL", this.Cancel);
if (this.Status.HasValue)
cmd.Parameters.AddWithValue("@STATUS", (int)this.Status.Value);
else
cmd.Parameters.AddWithValue("@STATUS", DBNull.Value);
cmd.Parameters.AddWithValue("@REPORTINGPARTYID", this.ReportingParty.Id);
}
}
public void Delete(System.Data.IDbConnection connection)
{
throw new NotImplementedException();
}
#endregion
}
}

View File

@ -0,0 +1,37 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bsmd.database
{
public class MessageCore
{
private Guid id;
#region Properties
public Guid Id { get { return this.id; } }
public string VisitId { get; set; }
public string TransitId { get; set; }
public string IMO { get; set; }
public string ENI { get; set; }
public string PoC { get; set; }
public string Portname { get; set; }
public DateTime ETA { get; set; }
public bool IsTransit { get; set; }
#endregion
}
}

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("bsmd.database")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("bsmd.database")]
[assembly: AssemblyCopyright("Copyright © 2015")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("3164c7df-b8ef-491f-b6fc-b0dce6969c85")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -0,0 +1,58 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace bsmd.database
{
public class ReportingParty
{
private Guid id;
#region enumerations
public enum ReportingPartyTypeEnum
{ MASTER, SHIPOWNER, CHARTERER, AGENT, PORT_AUTHORITY, CARRIER, OTHERS }
#endregion
#region Properties
public Guid Id { get { return this.id; } }
public string Name { get; set; }
public string StreetAndNumber { get; set; }
public string PostalCode { get; set; }
public string City { get; set; }
public string Country { get; set; }
public string LastName { get; set; }
public string FirstName { get; set; }
public string Phone { get; set; }
public string Fax { get; set; }
public string EMail { get; set; }
public ReportingPartyTypeEnum? ReportingPartyType { get; set; }
#endregion
#region overrides
public override string ToString()
{
return this.Name;
}
#endregion
}
}

View File

@ -0,0 +1,65 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{19945AF2-379B-46A5-B27A-303B5EC1D557}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>bsmd.database</RootNamespace>
<AssemblyName>bsmd.database</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.Security" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="IDatabaseEntity.cs" />
<Compile Include="Message.cs" />
<Compile Include="MessageCore.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="ReportingParty.cs" />
</ItemGroup>
<ItemGroup>
<None Include="App.Config" />
</ItemGroup>
<ItemGroup>
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@ -0,0 +1,34 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 2013
VisualStudioVersion = 12.0.21005.1
MinimumVisualStudioVersion = 10.0.40219.1
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "bsmd.dbh.ResponseService", "bsmd.dbh.ResponseService\bsmd.dbh.ResponseService.csproj", "{3538F989-8AD1-4DC8-B204-3F3232230475}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "bsmd.dbh", "bsmd.dbh\bsmd.dbh.csproj", "{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "bsmd.database", "bsmd.database\bsmd.database.csproj", "{19945AF2-379B-46A5-B27A-303B5EC1D557}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Release|Any CPU = Release|Any CPU
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{3538F989-8AD1-4DC8-B204-3F3232230475}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{3538F989-8AD1-4DC8-B204-3F3232230475}.Debug|Any CPU.Build.0 = Debug|Any CPU
{3538F989-8AD1-4DC8-B204-3F3232230475}.Release|Any CPU.ActiveCfg = Release|Any CPU
{3538F989-8AD1-4DC8-B204-3F3232230475}.Release|Any CPU.Build.0 = Release|Any CPU
{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}.Release|Any CPU.Build.0 = Release|Any CPU
{19945AF2-379B-46A5-B27A-303B5EC1D557}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{19945AF2-379B-46A5-B27A-303B5EC1D557}.Debug|Any CPU.Build.0 = Debug|Any CPU
{19945AF2-379B-46A5-B27A-303B5EC1D557}.Release|Any CPU.ActiveCfg = Release|Any CPU
{19945AF2-379B-46A5-B27A-303B5EC1D557}.Release|Any CPU.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Binary file not shown.

View File

@ -0,0 +1,47 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace bsmd.dbh.ResponseService
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the interface name "IService1" in both code and config file together.
[ServiceContract]
public interface IService1
{
[OperationContract]
string GetData(int value);
[OperationContract]
CompositeType GetDataUsingDataContract(CompositeType composite);
// TODO: Add your service operations here
}
// Use a data contract as illustrated in the sample below to add composite types to service operations.
[DataContract]
public class CompositeType
{
bool boolValue = true;
string stringValue = "Hello ";
[DataMember]
public bool BoolValue
{
get { return boolValue; }
set { boolValue = value; }
}
[DataMember]
public string StringValue
{
get { return stringValue; }
set { stringValue = value; }
}
}
}

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("bsmd.dbh.ResponseService")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("bsmd.dbh.ResponseService")]
[assembly: AssemblyCopyright("Copyright © 2015")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("f9d61dd1-3f43-4c8b-83b1-b778d28a5367")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -0,0 +1 @@
<%@ ServiceHost Language="C#" Debug="true" Service="bsmd.dbh.ResponseService.Service1" CodeBehind="Service1.svc.cs" %>

View File

@ -0,0 +1,33 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Runtime.Serialization;
using System.ServiceModel;
using System.ServiceModel.Web;
using System.Text;
namespace bsmd.dbh.ResponseService
{
// NOTE: You can use the "Rename" command on the "Refactor" menu to change the class name "Service1" in code, svc and config file together.
// NOTE: In order to launch WCF Test Client for testing this service, please select Service1.svc or Service1.svc.cs at the Solution Explorer and start debugging.
public class Service1 : IService1
{
public string GetData(int value)
{
return string.Format("You entered: {0}", value);
}
public CompositeType GetDataUsingDataContract(CompositeType composite)
{
if (composite == null)
{
throw new ArgumentNullException("composite");
}
if (composite.BoolValue)
{
composite.StringValue += "Suffix";
}
return composite;
}
}
}

View File

@ -0,0 +1,30 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<!--
In the example below, the "SetAttributes" transform will change the value of
"connectionString" to use "ReleaseSQLServer" only when the "Match" locator
finds an attribute "name" that has a value of "MyDB".
<connectionStrings>
<add name="MyDB"
connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>
-->
<system.web>
<!--
In the example below, the "Replace" transform will replace the entire
<customErrors> section of your web.config file.
Note that because there is only one customErrors section under the
<system.web> node, there is no need to use the "xdt:Locator" attribute.
<customErrors defaultRedirect="GenericError.htm"
mode="RemoteOnly" xdt:Transform="Replace">
<error statusCode="500" redirect="InternalError.htm"/>
</customErrors>
-->
</system.web>
</configuration>

View File

@ -0,0 +1,31 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- For more information on using web.config transformation visit http://go.microsoft.com/fwlink/?LinkId=125889 -->
<configuration xmlns:xdt="http://schemas.microsoft.com/XML-Document-Transform">
<!--
In the example below, the "SetAttributes" transform will change the value of
"connectionString" to use "ReleaseSQLServer" only when the "Match" locator
finds an attribute "name" that has a value of "MyDB".
<connectionStrings>
<add name="MyDB"
connectionString="Data Source=ReleaseSQLServer;Initial Catalog=MyReleaseDB;Integrated Security=True"
xdt:Transform="SetAttributes" xdt:Locator="Match(name)"/>
</connectionStrings>
-->
<system.web>
<compilation xdt:Transform="RemoveAttributes(debug)" />
<!--
In the example below, the "Replace" transform will replace the entire
<customErrors> section of your web.config file.
Note that because there is only one customErrors section under the
<system.web> node, there is no need to use the "xdt:Locator" attribute.
<customErrors defaultRedirect="GenericError.htm"
mode="RemoteOnly" xdt:Transform="Replace">
<error statusCode="500" redirect="InternalError.htm"/>
</customErrors>
-->
</system.web>
</configuration>

View File

@ -0,0 +1,36 @@
<?xml version="1.0"?>
<configuration>
<appSettings>
<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />
</appSettings>
<system.web>
<compilation debug="true" targetFramework="4.5" />
<httpRuntime targetFramework="4.5"/>
</system.web>
<system.serviceModel>
<behaviors>
<serviceBehaviors>
<behavior>
<!-- To avoid disclosing metadata information, set the values below to false before deployment -->
<serviceMetadata httpGetEnabled="true" httpsGetEnabled="true"/>
<!-- To receive exception details in faults for debugging purposes, set the value below to true. Set to false before deployment to avoid disclosing exception information -->
<serviceDebug includeExceptionDetailInFaults="false"/>
</behavior>
</serviceBehaviors>
</behaviors>
<protocolMapping>
<add binding="basicHttpsBinding" scheme="https" />
</protocolMapping>
<serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<!--
To browse web app root directory during debugging, set the value below to true.
Set to false before deployment to avoid disclosing web app folder information.
-->
<directoryBrowse enabled="true"/>
</system.webServer>
</configuration>

View File

@ -0,0 +1,121 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProductVersion>
</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{3538F989-8AD1-4DC8-B204-3F3232230475}</ProjectGuid>
<ProjectTypeGuids>{349c5851-65df-11da-9384-00065b846f21};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>bsmd.dbh.ResponseService</RootNamespace>
<AssemblyName>bsmd.dbh.ResponseService</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<WcfConfigValidationEnabled>True</WcfConfigValidationEnabled>
<UseIISExpress>true</UseIISExpress>
<IISExpressSSLPort />
<IISExpressAnonymousAuthentication />
<IISExpressWindowsAuthentication />
<IISExpressUseClassicPipelineMode />
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Web.DynamicData" />
<Reference Include="System.Web.Entity" />
<Reference Include="System.Web.ApplicationServices" />
<Reference Include="System" />
<Reference Include="System.Configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Drawing" />
<Reference Include="System.EnterpriseServices" />
<Reference Include="System.Runtime.Serialization" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.ServiceModel.Web" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.Web.Services" />
<Reference Include="System.Xml" />
<Reference Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Content Include="Service1.svc" />
<Content Include="Web.config" />
</ItemGroup>
<ItemGroup>
<Compile Include="Service1.svc.cs">
<DependentUpon>Service1.svc</DependentUpon>
</Compile>
<Compile Include="IService1.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
</ItemGroup>
<ItemGroup>
<Folder Include="App_Data\" />
</ItemGroup>
<ItemGroup>
<None Include="Web.Debug.config">
<DependentUpon>Web.config</DependentUpon>
</None>
<None Include="Web.Release.config">
<DependentUpon>Web.config</DependentUpon>
</None>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\bsmd.dbh\bsmd.dbh.csproj">
<Project>{df625ff0-2265-4686-9cb6-2a8511cb3b9d}</Project>
<Name>bsmd.dbh</Name>
</ProjectReference>
</ItemGroup>
<PropertyGroup>
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
</PropertyGroup>
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.targets" />
<Import Project="$(VSToolsPath)\WebApplications\Microsoft.WebApplication.targets" Condition="'$(VSToolsPath)' != ''" />
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v10.0\WebApplications\Microsoft.WebApplication.targets" Condition="false" />
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<UseIIS>True</UseIIS>
<AutoAssignPort>True</AutoAssignPort>
<DevelopmentServerPort>2738</DevelopmentServerPort>
<DevelopmentServerVPath>/</DevelopmentServerVPath>
<IISUrl>http://localhost:2738/</IISUrl>
<NTLMAuthentication>False</NTLMAuthentication>
<UseCustomServer>False</UseCustomServer>
<CustomServerUrl>
</CustomServerUrl>
<SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

View File

@ -0,0 +1,28 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ProjectExtensions>
<VisualStudio>
<FlavorProperties GUID="{349c5851-65df-11da-9384-00065b846f21}">
<WebProjectProperties>
<StartPageUrl>
</StartPageUrl>
<StartAction>CurrentPage</StartAction>
<AspNetDebugging>True</AspNetDebugging>
<SilverlightDebugging>False</SilverlightDebugging>
<NativeDebugging>False</NativeDebugging>
<SQLDebugging>False</SQLDebugging>
<ExternalProgram>
</ExternalProgram>
<StartExternalURL>
</StartExternalURL>
<StartCmdLineArguments>
</StartCmdLineArguments>
<StartWorkingDirectory>
</StartWorkingDirectory>
<EnableENC>True</EnableENC>
<AlwaysStartWebServerOnDebug>True</AlwaysStartWebServerOnDebug>
</WebProjectProperties>
</FlavorProperties>
</VisualStudio>
</ProjectExtensions>
</Project>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,746 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.34209
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
using System.Xml.Serialization;
//
// This source code was auto-generated by xsd, Version=4.0.30319.1.
//
namespace bsmd.dbh.response
{
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace = "", IsNullable = false)]
public partial class Root
{
private string versionField;
private string messageIdField;
private string visitIdField;
private string transitIdField;
private System.DateTime timestampField;
private RootType typeField;
private RootReportingClassesFull reportingClassesFullField;
private RootReportingClassesPartial reportingClassesPartialField;
private RootReportingClassesError reportingClassesErrorField;
private RootReportingClassesResetted reportingClassesResettedField;
private RootMessage[] messagesField;
/// <remarks/>
public string Version
{
get
{
return this.versionField;
}
set
{
this.versionField = value;
}
}
/// <remarks/>
public string MessageId
{
get
{
return this.messageIdField;
}
set
{
this.messageIdField = value;
}
}
/// <remarks/>
public string VisitId
{
get
{
return this.visitIdField;
}
set
{
this.visitIdField = value;
}
}
/// <remarks/>
public string TransitId
{
get
{
return this.transitIdField;
}
set
{
this.transitIdField = value;
}
}
/// <remarks/>
public System.DateTime Timestamp
{
get
{
return this.timestampField;
}
set
{
this.timestampField = value;
}
}
/// <remarks/>
public RootType Type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
/// <remarks/>
public RootReportingClassesFull ReportingClassesFull
{
get
{
return this.reportingClassesFullField;
}
set
{
this.reportingClassesFullField = value;
}
}
/// <remarks/>
public RootReportingClassesPartial ReportingClassesPartial
{
get
{
return this.reportingClassesPartialField;
}
set
{
this.reportingClassesPartialField = value;
}
}
/// <remarks/>
public RootReportingClassesError ReportingClassesError
{
get
{
return this.reportingClassesErrorField;
}
set
{
this.reportingClassesErrorField = value;
}
}
/// <remarks/>
public RootReportingClassesResetted ReportingClassesResetted
{
get
{
return this.reportingClassesResettedField;
}
set
{
this.reportingClassesResettedField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlArrayItemAttribute("Message", IsNullable = false)]
public RootMessage[] Messages
{
get
{
return this.messagesField;
}
set
{
this.messagesField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootType
{
/// <remarks/>
VISIT,
/// <remarks/>
TRANSIT,
/// <remarks/>
DATA,
/// <remarks/>
RESET,
/// <remarks/>
CANCEL,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class RootReportingClassesFull
{
private RootReportingClassesFullReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesFullReportingClass[] ReportingClass
{
get
{
return this.reportingClassField;
}
set
{
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootReportingClassesFullReportingClass
{
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class RootReportingClassesPartial
{
private RootReportingClassesPartialReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesPartialReportingClass[] ReportingClass
{
get
{
return this.reportingClassField;
}
set
{
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootReportingClassesPartialReportingClass
{
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class RootReportingClassesError
{
private RootReportingClassesErrorReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesErrorReportingClass[] ReportingClass
{
get
{
return this.reportingClassField;
}
set
{
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootReportingClassesErrorReportingClass
{
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class RootReportingClassesResetted
{
private RootReportingClassesResettedReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesResettedReportingClass[] ReportingClass
{
get
{
return this.reportingClassField;
}
set
{
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootReportingClassesResettedReportingClass
{
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public partial class RootMessage
{
private string idField;
private RootMessageType typeField;
private string locationField;
private string textField;
/// <remarks/>
public string ID
{
get
{
return this.idField;
}
set
{
this.idField = value;
}
}
/// <remarks/>
public RootMessageType Type
{
get
{
return this.typeField;
}
set
{
this.typeField = value;
}
}
/// <remarks/>
public string Location
{
get
{
return this.locationField;
}
set
{
this.locationField = value;
}
}
/// <remarks/>
public string Text
{
get
{
return this.textField;
}
set
{
this.textField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType = true)]
public enum RootMessageType
{
/// <remarks/>
INFO,
/// <remarks/>
WARNING,
/// <remarks/>
VIOLATION,
/// <remarks/>
ERROR,
}
}

View File

@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// General Information about an assembly is controlled through the following
// set of attributes. Change these attribute values to modify the information
// associated with an assembly.
[assembly: AssemblyTitle("bsmd.dbh")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("bsmd.dbh")]
[assembly: AssemblyCopyright("Copyright © 2015")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// Setting ComVisible to false makes the types in this assembly not visible
// to COM components. If you need to access a type in this assembly from
// COM, set the ComVisible attribute to true on that type.
[assembly: ComVisible(false)]
// The following GUID is for the ID of the typelib if this project is exposed to COM
[assembly: Guid("33a25a1e-fb46-46ed-b0ad-e068740ed108")]
// Version information for an assembly consists of the following four values:
//
// Major Version
// Minor Version
// Build Number
// Revision
//
// You can specify all the values or you can default the Build and Revision Numbers
// by using the '*' as shown below:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]

View File

@ -0,0 +1,99 @@
//
// Class: Util
// Current CLR: 4.0.30319.34209
// System: Microsoft Visual Studio 10.0
// Author: dani
// Created: 3/1/2015 8:05:05 PM
//
// Copyright (c) 2015 Informatikbüro Daniel Schick. All rights reserved.
using System;
using System.Collections.Generic;
using bsmd.database;
using bsmd.dbh.request;
namespace bsmd.dbh
{
public class Request
{
public static bool SendMessage(Message aMessage)
{
if (aMessage == null) return false;
// map message to dbh NSWRequest object
Root root = new Root();
root.Version = "1.8";
root.ReportingParty = new RootReportingParty();
root.ReportingParty.RPCity = aMessage.ReportingParty.City;
root.ReportingParty.RPCountry = aMessage.ReportingParty.Country;
root.ReportingParty.RPEMail = aMessage.ReportingParty.EMail;
root.ReportingParty.RPFax = aMessage.ReportingParty.Fax;
root.ReportingParty.RPFirstName = aMessage.ReportingParty.FirstName;
root.ReportingParty.RPLastName = aMessage.ReportingParty.LastName;
root.ReportingParty.RPName = aMessage.ReportingParty.Name;
root.ReportingParty.RPPhone = aMessage.ReportingParty.Phone;
root.ReportingParty.RPPostalCode = aMessage.ReportingParty.PostalCode;
root.ReportingParty.RPStreetAndNumber = aMessage.ReportingParty.StreetAndNumber;
root.ReportingParty.RPTypeSpecified = aMessage.ReportingParty.ReportingPartyType.HasValue;
if (root.ReportingParty.RPTypeSpecified)
root.ReportingParty.RPType = (RootReportingPartyRPType) aMessage.ReportingParty.ReportingPartyType.Value;
root.Timestamp = DateTime.Now;
switch(aMessage.MessageNotificationClass)
{
case Message.NotificationClass.VISIT:
{
root.Type = RootType.VISIT;
root.Item = new RootVisit();
if (aMessage.MessageCore.IMO != null)
{
((RootVisit)root.Item).ItemElementName = ItemChoiceType.IMONumber;
((RootVisit)root.Item).Item = aMessage.MessageCore.IMO;
}
else
{
((RootVisit)root.Item).ItemElementName = ItemChoiceType.ENINumber;
((RootVisit)root.Item).Item = aMessage.MessageCore.ENI;
}
((RootVisit)root.Item).PortOfCall = aMessage.MessageCore.PoC;
((RootVisit)root.Item).ETAPortOfCall = aMessage.MessageCore.ETA;
break;
}
case Message.NotificationClass.TRANSIT:
root.Type = RootType.TRANSIT;
root.Item = new RootTransit();
if (aMessage.MessageCore.IMO != null)
{
((RootTransit)root.Item).ItemElementName = ItemChoiceType1.IMONumber;
((RootTransit)root.Item).Item = aMessage.MessageCore.IMO;
}
else
{
((RootTransit)root.Item).ItemElementName = ItemChoiceType1.ENINumber;
((RootTransit)root.Item).Item = aMessage.MessageCore.ENI;
}
((RootTransit)root.Item).ETAKielCanal = aMessage.MessageCore.ETA;
break;
default:
throw new NotImplementedException("sending message type not implemented yet!");
}
// send object
return false;
}
}
}

View File

@ -0,0 +1,18 @@
//
// Class: Response
// Current CLR: 4.0.30319.34209
// System: Microsoft Visual Studio 10.0
// Author: dani
// Created: 3/1/2015 8:12:08 PM
//
// Copyright (c) 2015 Informatikbüro Daniel Schick. All rights reserved.
using System;
using System.Collections.Generic;
namespace bsmd.dbh
{
public class Response
{
}
}

View File

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{DF625FF0-2265-4686-9CB6-2A8511CB3B9D}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>bsmd.dbh</RootNamespace>
<AssemblyName>bsmd.dbh</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="System" />
<Reference Include="System.Core" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Xml" />
</ItemGroup>
<ItemGroup>
<Compile Include="NSWRequest.cs" />
<Compile Include="NSWResponse.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="Request.cs" />
<Compile Include="Response.cs" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\bsmd.database\bsmd.database.csproj">
<Project>{19945af2-379b-46a5-b27a-303b5ec1d557}</Project>
<Name>bsmd.database</Name>
</ProjectReference>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,673 @@
//------------------------------------------------------------------------------
// <auto-generated>
// Dieser Code wurde von einem Tool generiert.
// Laufzeitversion:4.0.30319.34209
//
// Änderungen an dieser Datei können falsches Verhalten verursachen und gehen verloren, wenn
// der Code erneut generiert wird.
// </auto-generated>
//------------------------------------------------------------------------------
using System.Xml.Serialization;
//
// This source code was auto-generated by xsd, Version=4.0.30319.1.
//
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
[System.Xml.Serialization.XmlRootAttribute(Namespace="", IsNullable=false)]
public partial class Root {
private string versionField;
private string messageIdField;
private string visitIdField;
private string transitIdField;
private System.DateTime timestampField;
private RootType typeField;
private RootReportingClassesFull reportingClassesFullField;
private RootReportingClassesPartial reportingClassesPartialField;
private RootReportingClassesError reportingClassesErrorField;
private RootReportingClassesResetted reportingClassesResettedField;
private RootMessage[] messagesField;
/// <remarks/>
public string Version {
get {
return this.versionField;
}
set {
this.versionField = value;
}
}
/// <remarks/>
public string MessageId {
get {
return this.messageIdField;
}
set {
this.messageIdField = value;
}
}
/// <remarks/>
public string VisitId {
get {
return this.visitIdField;
}
set {
this.visitIdField = value;
}
}
/// <remarks/>
public string TransitId {
get {
return this.transitIdField;
}
set {
this.transitIdField = value;
}
}
/// <remarks/>
public System.DateTime Timestamp {
get {
return this.timestampField;
}
set {
this.timestampField = value;
}
}
/// <remarks/>
public RootType Type {
get {
return this.typeField;
}
set {
this.typeField = value;
}
}
/// <remarks/>
public RootReportingClassesFull ReportingClassesFull {
get {
return this.reportingClassesFullField;
}
set {
this.reportingClassesFullField = value;
}
}
/// <remarks/>
public RootReportingClassesPartial ReportingClassesPartial {
get {
return this.reportingClassesPartialField;
}
set {
this.reportingClassesPartialField = value;
}
}
/// <remarks/>
public RootReportingClassesError ReportingClassesError {
get {
return this.reportingClassesErrorField;
}
set {
this.reportingClassesErrorField = value;
}
}
/// <remarks/>
public RootReportingClassesResetted ReportingClassesResetted {
get {
return this.reportingClassesResettedField;
}
set {
this.reportingClassesResettedField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlArrayItemAttribute("Message", IsNullable=false)]
public RootMessage[] Messages {
get {
return this.messagesField;
}
set {
this.messagesField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootType {
/// <remarks/>
VISIT,
/// <remarks/>
TRANSIT,
/// <remarks/>
DATA,
/// <remarks/>
RESET,
/// <remarks/>
CANCEL,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class RootReportingClassesFull {
private RootReportingClassesFullReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesFullReportingClass[] ReportingClass {
get {
return this.reportingClassField;
}
set {
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootReportingClassesFullReportingClass {
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class RootReportingClassesPartial {
private RootReportingClassesPartialReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesPartialReportingClass[] ReportingClass {
get {
return this.reportingClassField;
}
set {
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootReportingClassesPartialReportingClass {
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class RootReportingClassesError {
private RootReportingClassesErrorReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesErrorReportingClass[] ReportingClass {
get {
return this.reportingClassField;
}
set {
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootReportingClassesErrorReportingClass {
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class RootReportingClassesResetted {
private RootReportingClassesResettedReportingClass[] reportingClassField;
/// <remarks/>
[System.Xml.Serialization.XmlElementAttribute("ReportingClass")]
public RootReportingClassesResettedReportingClass[] ReportingClass {
get {
return this.reportingClassField;
}
set {
this.reportingClassField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootReportingClassesResettedReportingClass {
/// <remarks/>
NOA_NOD,
/// <remarks/>
ATA,
/// <remarks/>
ATD,
/// <remarks/>
SEC,
/// <remarks/>
POBA,
/// <remarks/>
POBD,
/// <remarks/>
NAME,
/// <remarks/>
TIEFA,
/// <remarks/>
TIEFD,
/// <remarks/>
BKRA,
/// <remarks/>
BKRD,
/// <remarks/>
STAT,
/// <remarks/>
LADG,
/// <remarks/>
INFO,
/// <remarks/>
SERV,
/// <remarks/>
PRE72H,
/// <remarks/>
MDH,
/// <remarks/>
WAS,
/// <remarks/>
CREW,
/// <remarks/>
PAS,
/// <remarks/>
BPOL,
/// <remarks/>
TOWA,
/// <remarks/>
TOWD,
/// <remarks/>
HAZA,
/// <remarks/>
HAZD,
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Diagnostics.DebuggerStepThroughAttribute()]
[System.ComponentModel.DesignerCategoryAttribute("code")]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public partial class RootMessage {
private string idField;
private RootMessageType typeField;
private string locationField;
private string textField;
/// <remarks/>
public string ID {
get {
return this.idField;
}
set {
this.idField = value;
}
}
/// <remarks/>
public RootMessageType Type {
get {
return this.typeField;
}
set {
this.typeField = value;
}
}
/// <remarks/>
public string Location {
get {
return this.locationField;
}
set {
this.locationField = value;
}
}
/// <remarks/>
public string Text {
get {
return this.textField;
}
set {
this.textField = value;
}
}
}
/// <remarks/>
[System.CodeDom.Compiler.GeneratedCodeAttribute("xsd", "4.0.30319.1")]
[System.SerializableAttribute()]
[System.Xml.Serialization.XmlTypeAttribute(AnonymousType=true)]
public enum RootMessageType {
/// <remarks/>
INFO,
/// <remarks/>
WARNING,
/// <remarks/>
VIOLATION,
/// <remarks/>
ERROR,
}

View File

@ -0,0 +1,296 @@
<?xml version="1.0" encoding="utf-8" ?>
<!--Created with Liquid XML Studio - FREE Community Edition 7.0.3.780 (http://www.liquid-technologies.com)-->
<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:element name="Root">
<xs:complexType>
<xs:sequence>
<xs:element minOccurs="0" name="Version">
<xs:annotation>
<xs:documentation>Version number of schema</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="5" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="MessageId" type="xs:string" />
<xs:element minOccurs="0" name="VisitId">
<xs:annotation>
<xs:documentation>Required when TransitId is missing and field "Type" is not "VISIT or "TRANSIT"</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="(DE)([A-Z]{3})-([0-9]{4})-([A-Z]{6})" />
<xs:length value="17" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="TransitId">
<xs:annotation>
<xs:documentation>Required when VisitId is missing and field "Type" is not "VISIT or "TRANSIT"</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:pattern value="(ZZNOK)-([0-9]{4})-([A-Z]{6})" />
<xs:length value="17" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Timestamp" type="xs:dateTime">
<xs:annotation>
<xs:documentation>Timestamp, when the message is sent</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Type">
<xs:annotation>
<xs:documentation>The message type (should be the same as in the request message):
- VISIT: Creates a new declaration with the application for a VisitId. It's allowed to send further data in one or more reporting classes
- TRANSIT: same with TransitId
- DATA: Only data for one or more reporting classes are included
- RESET: The data of one or more reporting classes are deleted
- CANCEL: The whole declaration is cancelled</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="VISIT" />
<xs:enumeration value="TRANSIT" />
<xs:enumeration value="DATA" />
<xs:enumeration value="RESET" />
<xs:enumeration value="CANCEL" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element minOccurs="0" name="ReportingClassesFull">
<xs:annotation>
<xs:documentation>Reporting classes that are received with all necessary data.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ReportingClass">
<xs:annotation>
<xs:documentation>The code of a reporting class.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NOA_NOD" />
<xs:enumeration value="ATA" />
<xs:enumeration value="ATD" />
<xs:enumeration value="SEC" />
<xs:enumeration value="POBA" />
<xs:enumeration value="POBD" />
<xs:enumeration value="NAME" />
<xs:enumeration value="TIEFA" />
<xs:enumeration value="TIEFD" />
<xs:enumeration value="BKRA" />
<xs:enumeration value="BKRD" />
<xs:enumeration value="STAT" />
<xs:enumeration value="LADG" />
<xs:enumeration value="INFO" />
<xs:enumeration value="SERV" />
<xs:enumeration value="PRE72H" />
<xs:enumeration value="MDH" />
<xs:enumeration value="WAS" />
<xs:enumeration value="CREW" />
<xs:enumeration value="PAS" />
<xs:enumeration value="BPOL" />
<xs:enumeration value="TOWA" />
<xs:enumeration value="TOWD" />
<xs:enumeration value="HAZA" />
<xs:enumeration value="HAZD" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ReportingClassesPartial">
<xs:annotation>
<xs:documentation>Reporting classes that are received with some data missing (see Messages for errors/violations).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ReportingClass">
<xs:annotation>
<xs:documentation>The code of a reporting class.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NOA_NOD" />
<xs:enumeration value="ATA" />
<xs:enumeration value="ATD" />
<xs:enumeration value="SEC" />
<xs:enumeration value="POBA" />
<xs:enumeration value="POBD" />
<xs:enumeration value="NAME" />
<xs:enumeration value="TIEFA" />
<xs:enumeration value="TIEFD" />
<xs:enumeration value="BKRA" />
<xs:enumeration value="BKRD" />
<xs:enumeration value="STAT" />
<xs:enumeration value="LADG" />
<xs:enumeration value="INFO" />
<xs:enumeration value="SERV" />
<xs:enumeration value="PRE72H" />
<xs:enumeration value="MDH" />
<xs:enumeration value="WAS" />
<xs:enumeration value="CREW" />
<xs:enumeration value="PAS" />
<xs:enumeration value="BPOL" />
<xs:enumeration value="TOWA" />
<xs:enumeration value="TOWD" />
<xs:enumeration value="HAZA" />
<xs:enumeration value="HAZD" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ReportingClassesError">
<xs:annotation>
<xs:documentation>Reporting classes that are received with some data missing (see Messages for errors/violations).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ReportingClass">
<xs:annotation>
<xs:documentation>The code of a reporting class.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NOA_NOD" />
<xs:enumeration value="ATA" />
<xs:enumeration value="ATD" />
<xs:enumeration value="SEC" />
<xs:enumeration value="POBA" />
<xs:enumeration value="POBD" />
<xs:enumeration value="NAME" />
<xs:enumeration value="TIEFA" />
<xs:enumeration value="TIEFD" />
<xs:enumeration value="BKRA" />
<xs:enumeration value="BKRD" />
<xs:enumeration value="STAT" />
<xs:enumeration value="LADG" />
<xs:enumeration value="INFO" />
<xs:enumeration value="SERV" />
<xs:enumeration value="PRE72H" />
<xs:enumeration value="MDH" />
<xs:enumeration value="WAS" />
<xs:enumeration value="CREW" />
<xs:enumeration value="PAS" />
<xs:enumeration value="BPOL" />
<xs:enumeration value="TOWA" />
<xs:enumeration value="TOWD" />
<xs:enumeration value="HAZA" />
<xs:enumeration value="HAZD" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element minOccurs="0" name="ReportingClassesResetted">
<xs:annotation>
<xs:documentation>Reporting classes that are resetted (due to a message with Type RESET).</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence minOccurs="0" maxOccurs="unbounded">
<xs:element name="ReportingClass">
<xs:annotation>
<xs:documentation>The code of a reporting class.</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="NOA_NOD" />
<xs:enumeration value="ATA" />
<xs:enumeration value="ATD" />
<xs:enumeration value="SEC" />
<xs:enumeration value="POBA" />
<xs:enumeration value="POBD" />
<xs:enumeration value="NAME" />
<xs:enumeration value="TIEFA" />
<xs:enumeration value="TIEFD" />
<xs:enumeration value="BKRA" />
<xs:enumeration value="BKRD" />
<xs:enumeration value="STAT" />
<xs:enumeration value="LADG" />
<xs:enumeration value="INFO" />
<xs:enumeration value="SERV" />
<xs:enumeration value="PRE72H" />
<xs:enumeration value="MDH" />
<xs:enumeration value="WAS" />
<xs:enumeration value="CREW" />
<xs:enumeration value="PAS" />
<xs:enumeration value="BPOL" />
<xs:enumeration value="TOWA" />
<xs:enumeration value="TOWD" />
<xs:enumeration value="HAZA" />
<xs:enumeration value="HAZD" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="Messages">
<xs:annotation>
<xs:documentation>Errors, Violations, etc.</xs:documentation>
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element maxOccurs="unbounded" name="Message">
<xs:complexType>
<xs:sequence>
<xs:element name="ID">
<xs:annotation>
<xs:documentation>ID (given from NSW)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="3" />
<xs:maxLength value="6" />
<xs:pattern value="([A-Z]{0,3}[1-9][0-9]{2})" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Type">
<xs:annotation>
<xs:documentation>Type of Message (functional error, process error in report, process error in message basket, process error during status request, or violation)</xs:documentation>
</xs:annotation>
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:enumeration value="INFO" />
<xs:enumeration value="WARNING" />
<xs:enumeration value="VIOLATION" />
<xs:enumeration value="ERROR" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Location">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="32" />
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="Text">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="255" />
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:schema>

BIN
nsw/eDeclaration_240215.pdf Normal file

Binary file not shown.