3.9.11: Kleine Korrekturen zwischenzeitlich aufgelaufen sind

This commit is contained in:
Daniel Schick 2018-02-21 16:16:05 +00:00
parent ae5b42086e
commit af9117d717
29 changed files with 7140 additions and 26 deletions

View File

@ -660,14 +660,21 @@ namespace ENI2.DetailViewControls
private void buttonCreatePDF_Click(object sender, RoutedEventArgs e)
{
bool aMessageToReportPDFFound = false;
for(int i = 0; i < this.dataGridMessages.SelectedItems.Count; i++)
{
Message selectedMessage = this.dataGridMessages.SelectedItems[i] as Message;
selectedMessage.InternalStatus = Message.BSMDStatus.REPORT;
selectedMessage.ReportingPartyId = App.UserId; // wichtig damit der Richtige(!) die Mail mit dem PDF bekommt
DBManager.GetSingleCon(Properties.Settings.Default.ConnectionString).Save(selectedMessage);
if ((selectedMessage.InternalStatus != Message.BSMDStatus.SENT) && (selectedMessage.InternalStatus != Message.BSMDStatus.TOSEND))
{
aMessageToReportPDFFound = true;
selectedMessage.InternalStatus = Message.BSMDStatus.REPORT;
selectedMessage.ReportingPartyId = App.UserId; // wichtig damit der Richtige(!) die Mail mit dem PDF bekommt
DBManager.GetSingleCon(Properties.Settings.Default.ConnectionString).Save(selectedMessage);
}
}
if (this.dataGridMessages.SelectedItems.Count > 0)
if (aMessageToReportPDFFound)
{
this.Core.ReportStatus = MessageCore.ReportStatusEnum.SINGLE;
DBManager.GetSingleCon(Properties.Settings.Default.ConnectionString).Save(this.Core);

View File

@ -98,16 +98,16 @@
<Label HorizontalContentAlignment="Right" Grid.Row="6" Grid.Column="2" Content="{x:Static p:Resources.textFax}" Name="label_AgentFax" Margin="0,0,10,0"/>
<Label HorizontalContentAlignment="Right" Grid.Row="3" Grid.Column="0" Content="{x:Static p:Resources.textCountry}" Name="label_AgentCountry" Margin="0,0,10,0"/>
<TextBox Grid.Row="0" Grid.Column="1" Name="textBox_AgentCompanyName" MaxLength="100" Margin="2" Text="{Binding AgentCompanyName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="1" Grid.Column="1" Name="textBox_AgentStreetAndNumber" MaxLength="100" Margin="2" Text="{Binding AgentStreetAndNumber}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="2" Grid.Column="1" Name="textBox_AgentPostalCode" MaxLength="100" Margin="2" Text="{Binding AgentPostalCode}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="2" Grid.Column="3" Name="textBox_AgentCity" MaxLength="100" Margin="2" Text="{Binding AgentCity}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="3" Grid.Column="1" Name="textBox_AgentCountry" MaxLength="100" Margin="2" Text="{Binding AgentCountry}" VerticalContentAlignment="Center" />
<TextBox Grid.Row="5" Grid.Column="1" Name="textBox_AgentLastName" MaxLength="100" Margin="2" Text="{Binding AgentLastName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="5" Grid.Column="3" Name="textBox_AgentFirstName" MaxLength="100" Margin="2" Text="{Binding AgentFirstName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="6" Grid.Column="1" Name="textBox_AgentPhone" MaxLength="100" Margin="2" Text="{Binding AgentPhone}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="6" Grid.Column="3" Name="textBox_AgentFax" MaxLength="100" Margin="2" Text="{Binding AgentFax}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="7" Grid.Column="1" Name="textBox_AgentEMail" MaxLength="100" Margin="2" Text="{Binding AgentEMail}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="0" Grid.Column="1" Name="textBox_AgentCompanyName" MaxLength="99" Margin="2" Text="{Binding AgentCompanyName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="1" Grid.Column="1" Name="textBox_AgentStreetAndNumber" MaxLength="99" Margin="2" Text="{Binding AgentStreetAndNumber}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="2" Grid.Column="1" Name="textBox_AgentPostalCode" MaxLength="99" Margin="2" Text="{Binding AgentPostalCode}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="2" Grid.Column="3" Name="textBox_AgentCity" MaxLength="99" Margin="2" Text="{Binding AgentCity}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="3" Grid.Column="1" Name="textBox_AgentCountry" MaxLength="99" Margin="2" Text="{Binding AgentCountry}" VerticalContentAlignment="Center" />
<TextBox Grid.Row="5" Grid.Column="1" Name="textBox_AgentLastName" MaxLength="99" Margin="2" Text="{Binding AgentLastName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="5" Grid.Column="3" Name="textBox_AgentFirstName" MaxLength="99" Margin="2" Text="{Binding AgentFirstName}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="6" Grid.Column="1" Name="textBox_AgentPhone" MaxLength="99" Margin="2" Text="{Binding AgentPhone}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="6" Grid.Column="3" Name="textBox_AgentFax" MaxLength="99" Margin="2" Text="{Binding AgentFax}" VerticalContentAlignment="Center"/>
<TextBox Grid.Row="7" Grid.Column="1" Name="textBox_AgentEMail" MaxLength="99" Margin="2" Text="{Binding AgentEMail}" VerticalContentAlignment="Center"/>
</Grid>
</GroupBox>

View File

@ -35,8 +35,8 @@
<MinimumRequiredVersion>3.5.1.0</MinimumRequiredVersion>
<CreateWebPageOnPublish>true</CreateWebPageOnPublish>
<WebPage>publish.html</WebPage>
<ApplicationRevision>1</ApplicationRevision>
<ApplicationVersion>3.9.10.%2a</ApplicationVersion>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>3.9.11.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<CreateDesktopShortcut>true</CreateDesktopShortcut>
<PublishWizardCompleted>true</PublishWizardCompleted>

View File

@ -58,8 +58,8 @@ namespace ENI2
textBoxIMO.Text = string.Empty;
textBoxName.Text = string.Empty;
textBoxTicketNr.Text = string.Empty;
dateTimePickerETAFrom.SelectedDate = null;
dateTimePickerETATo.SelectedDate = null;
// dateTimePickerETAFrom.SelectedDate = null; // herausgenommen nach RM CH 21.2.18
// dateTimePickerETATo.SelectedDate = null;
this.dataGrid.ItemsSource = null;
this.searchResultLabel.Content = "";
}

Binary file not shown.

View File

@ -0,0 +1,19 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="agnt">
<xs:sequence>
<xs:element name="AgentCompanyName" type="string1-99-type"/>
<xs:element name="AgentStreetAndNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="AgentPostalCode" type="string1-24-type" minOccurs="0"/>
<xs:element name="AgentCity" type="string1-99-type" minOccurs="0"/>
<xs:element name="AgentCountry" type="string1-99-type" minOccurs="0"/>
<xs:element name="AgentLastName" type="string1-99-type"/>
<xs:element name="AgentFirstName" type="string1-99-type" minOccurs="0"/>
<xs:element name="AgentPhone" type="string1-99-type"/>
<xs:element name="AgentFax" type="string1-99-type" minOccurs="0"/>
<xs:element name="AgentEMail" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,191 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<!-- ============ simple types ============ -->
<xs:simpleType name="visitid-type">
<xs:restriction base="xs:string">
<xs:pattern value="DE[A-Z]{3}-[0-9]{4}-[A-Z]{6}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="transitid-type">
<xs:restriction base="xs:string">
<xs:pattern value="ZZNOK-[0-9]{4}-[A-Z]{6}"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="locode-type">
<xs:restriction base='xs:string'>
<xs:minLength value='5'/>
<xs:maxLength value='5'/>
<xs:pattern value="[A-Z][A-Z][A-Z0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="companyid-type">
<xs:restriction base="xs:string">
<xs:minLength value='7'/>
<xs:maxLength value='7'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="flag-type">
<xs:restriction base='xs:string'>
<xs:minLength value='2'/>
<xs:maxLength value='2'/>
<xs:pattern value="[A-Z]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="unnumber-type">
<xs:restriction base="xs:string">
<xs:minLength value="4"/>
<xs:maxLength value="4"/>
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posint0-type">
<xs:restriction base='xs:integer'>
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posint1-3-type">
<xs:restriction base="xs:integer">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posint-type">
<xs:restriction base="xs:integer">
<xs:minExclusive value="0" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posint1-23-type">
<xs:restriction base='xs:integer'>
<xs:minInclusive value="1"/>
<xs:maxInclusive value="23"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posint10-99-type">
<xs:restriction base='xs:integer'>
<xs:minInclusive value="10"/>
<xs:maxInclusive value="99"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posfloat0-type">
<xs:restriction base='xs:float'>
<xs:minInclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="posfloat-type">
<xs:restriction base="xs:float">
<xs:minExclusive value="0"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-3-type">
<xs:restriction base="xs:string">
<xs:minLength value='1' />
<xs:maxLength value='3' />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-4-type">
<xs:restriction base="xs:string">
<xs:minLength value='1' />
<xs:maxLength value='4' />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string2-4-type">
<xs:restriction base="xs:string">
<xs:minLength value='2' />
<xs:maxLength value='4' />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string0-24-type">
<xs:restriction base="xs:string">
<xs:minLength value='0'/>
<xs:maxLength value='24'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-24-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='24'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string0-99-type">
<xs:restriction base="xs:string">
<xs:minLength value='0'/>
<xs:maxLength value='99'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-99-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='99'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-255-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='255'/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="string1-500-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='500'/>
</xs:restriction>
</xs:simpleType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="yorn-type">
<xs:restriction base="xs:string">
<xs:enumeration value="Y"/>
<xs:enumeration value="N"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="y-type">
<xs:restriction base="xs:string">
<xs:enumeration value="Y"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="gender-type">
<xs:restriction base="xs:string">
<xs:enumeration value="MALE"/>
<xs:enumeration value="FEMALE"/>
<xs:enumeration value="OTHER"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="document-type">
<xs:restriction base="xs:string">
<xs:enumeration value="IDENTITY_CARD"/>
<xs:enumeration value="PASSPORT"/>
<xs:enumeration value="MUSTER_BOOK"/>
<xs:enumeration value="PICTURE_ID"/>
<xs:enumeration value="RESIDENTAL_PERMIT"/>
<xs:enumeration value="OTHER_LEGAL_IDENTITY_DOCUMENT"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,18 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="bpol">
<xs:sequence>
<xs:element name="StowawayOnBoard" type="yorn-type"/>
<xs:element name="PortOfItinerary" type="portofitinery" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="portofitinery">
<xs:sequence>
<xs:element name="PortOfItineryName" type="string1-99-type"/>
<xs:element name="PortOfItineryETA" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,24 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="bkra">
<xs:sequence>
<xs:element name="BunkerFuelArrival" type="bunkerfuel" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="bkrd">
<xs:sequence>
<xs:element name="BunkerFuelDeparture" type="bunkerfuel" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="bunkerfuel">
<xs:sequence>
<xs:element name="BunkerFuelType" type="string1-99-type"/>
<xs:element name="BunkerFuelQuantity_TNE" type="posfloat-type"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,26 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="crew">
<xs:sequence>
<xs:element name="CrewMember" type="crewmember" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="crewmember">
<xs:sequence>
<xs:element name="CrewMemberLastName" type="string1-99-type"/>
<xs:element name="CrewMemberFirstName" type="string1-99-type"/>
<xs:element name="CrewMemberPlaceOfBirth" type="string1-99-type"/>
<xs:element name="CrewMemberDateOfBirth" type="xs:date"/>
<xs:element name="CrewMemberGender" type="gender-type" minOccurs="0"/>
<xs:element name="CrewMemberNationality" type="flag-type"/>
<xs:element name="CrewMemberIdentityDocumentType" type="document-type"/>
<xs:element name="CrewMemberIdentityDocumentId" type="string1-99-type"/>
<xs:element name="CrewMemberVisaNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="CrewMemberDuty" type="string1-99-type"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,287 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="haza">
<xs:choice>
<xs:element name="NoDPGOnBoardOnArrival" type="y-type"/>
<xs:sequence>
<xs:element name="DPGManifestOnBoardOnArrival" type="yorn-type" minOccurs="0"/>
<xs:element name="INFShipClass" type="infclass-type" minOccurs="0"/>
<xs:element name="MOUBaltic" type="y-type" minOccurs="0"/>
<xs:element name="DPGOnArrival" type="dglist"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<xs:complexType name="hazd">
<xs:choice>
<xs:element name="NoDPGOnBoardOnDeparture" type="y-type"/>
<xs:sequence>
<xs:element name="DPGManifestOnBoardOnDeparture" type="yorn-type" minOccurs="0"/>
<xs:element name="INFShipClass" type="infclass-type" minOccurs="0"/>
<xs:element name="MOUBaltic" type="y-type" minOccurs="0"/>
<xs:element name="DPGOnDeparture" type="dglist"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<xs:complexType name="dglist">
<xs:choice maxOccurs="unbounded">
<xs:element name="DPGItemIMDG" type="position-imdg" maxOccurs="unbounded"/>
<xs:element name="DPGItemIBC" type="position-ibc" maxOccurs="unbounded"/>
<xs:element name="DPGItemIGC" type="position-igc" maxOccurs="unbounded"/>
<xs:element name="DPGItemIMSBC" type="position-imsbc" maxOccurs="unbounded"/>
<xs:element name="DPGItemMARPOLAnnexI" type="position-marpol" maxOccurs="unbounded"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="position-imdg">
<xs:sequence>
<xs:element name="UNNumber" type="unnumber-type"/>
<xs:element name="PackingGroup" type="packinggroup-type" minOccurs="0"/>
<xs:element name="ProperShippingName" type="string1-500-type"/>
<xs:element name="IMOClass" type="imoclass-type"/>
<xs:element name="TechnicalName" type="string1-255-type" minOccurs="0"/>
<xs:element name="NetExplosiveMass_KGM" type="posfloat-type" minOccurs="0"/>
<xs:element name="Flashpoint_CEL" type="flashpointcel-type" minOccurs="0"/>
<xs:element name="Class7NuclideName" type="string1-99-type" minOccurs="0"/>
<xs:element name="Class7MaxActivity_BQL" type="posfloat0-type" minOccurs="0"/>
<xs:element name="Class7Category" type="class7cat-type" minOccurs="0"/>
<xs:element name="Class7TransportIndex" type="class7ti-type" minOccurs="0"/>
<xs:element name="Class7CSI" type="class7csi-type" minOccurs="0"/>
<xs:element name="ControlTemperature_CEL" type="xs:float" minOccurs="0"/>
<xs:element name="EmergencyTemperature_CEL" type="xs:float" minOccurs="0"/>
<xs:element name="SubsidiaryRisks" type="subsidiaryrisks" minOccurs="0"/>
<xs:element name="MarinePollutant" type="yorn-type"/>
<xs:element name="NumberOfPackages" type="posint-type"/>
<xs:element name="PackageType" type="string1-99-type"/>
<xs:element name="LimitedQuantities" type="yorn-type"/>
<xs:element name="ExceptedQuantities" type="yorn-type"/>
<xs:element name="NetQuantity_KGM" type="posfloat-type" minOccurs="0"/>
<xs:element name="GrossQuantity_KGM" type="posfloat-type" minOccurs="0"/>
<xs:element name="Volume_MTQ" type="posfloat-type" minOccurs="0"/>
<xs:element name="GeneralCargoIBC" type="yorn-type" minOccurs="0"/>
<xs:element name="ContainerNumber" type="string1-24-type" minOccurs="0"/>
<xs:element name="VehicleLicenseNumber" type="string1-24-type" minOccurs="0"/>
<xs:choice>
<xs:element name="StowagePosition" type="string1-24-type"/>
<xs:element name="StowagePositionBayRowTier" type="stowagepositionbayrowtier"/>
</xs:choice>
<xs:element name="PortOfLoading" type="locode-type"/>
<xs:element name="PortOfDischarge" type="locode-type"/>
<xs:element name="Remarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="subsidiaryrisks">
<xs:sequence>
<xs:element name="SubsidiaryRisk" type="risk-type" minOccurs="1" maxOccurs="5"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="stowagepositionbayrowtier">
<xs:sequence>
<xs:element name="Bay" type="bay-type"/>
<xs:element name="Row" type="cargocode-type"/>
<xs:element name="Tier" type="cargocode-type"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="position-ibc">
<xs:sequence>
<xs:element name="ProductName" type="string1-255-type"/>
<xs:element name="PollutionCategory" type="polcat-type"/>
<xs:element name="Hazards" type="hazard-type" minOccurs="0"/>
<xs:element name="FlashpointInformation" type="flashpointinfo-type"/>
<xs:element name="Flashpoint_CEL" type="flashpointcel-type" minOccurs="0"/>
<xs:element name="Quantity_KGM" type="posfloat-type"/>
<xs:element name="StowagePosition" type="string1-24-type"/>
<xs:element name="PortOfLoading" type="locode-type"/>
<xs:element name="PortOfDischarge" type="locode-type"/>
<xs:element name="SpecRef15_19" type="yorn-type" minOccurs="0"/>
<xs:element name="Remarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="position-igc">
<xs:sequence>
<xs:element name="UNNumber" type="unnumber-type" minOccurs="0"/>
<xs:element name="IMOClass" type="imoclass-type" minOccurs="0"/>
<xs:element name="ProductName" type="string1-255-type"/>
<xs:element name="Quantity_KGM" type="posfloat-type"/>
<xs:element name="StowagePosition" type="string1-24-type"/>
<xs:element name="PortOfLoading" type="locode-type"/>
<xs:element name="PortOfDischarge" type="locode-type"/>
<xs:element name="Remarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="position-imsbc">
<xs:sequence>
<xs:element name="BulkCargoShippingName" type="string1-255-type"/>
<xs:element name="MHB" type="yorn-type"/>
<xs:element name="UNNumber" type="unnumber-type" minOccurs="0"/>
<xs:element name="IMOClass" type="imoclass-type" minOccurs="0"/>
<xs:element name="Quantity_KGM" type="posfloat-type"/>
<xs:element name="StowagePosition" type="string1-24-type"/>
<xs:element name="PortOfLoading" type="locode-type"/>
<xs:element name="PortOfDischarge" type="locode-type"/>
<xs:element name="Remarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="position-marpol">
<xs:sequence>
<xs:element name="Name" type="string1-255-type"/>
<xs:element name="FlashpointInformation" type="flashpointinfo-type"/>
<xs:element name="Flashpoint_CEL" type="flashpointcel-type" minOccurs="0"/>
<xs:element name="Quantity_KGM" type="posfloat-type"/>
<xs:element name="StowagePosition" type="string1-24-type"/>
<xs:element name="PortOfLoading" type="locode-type"/>
<xs:element name="PortOfDischarge" type="locode-type"/>
<xs:element name="Remarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="generalcargo">
<xs:sequence>
<xs:element name="Cargo" type="loadunit" maxOccurs="unbounded" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="loadunit">
<xs:sequence>
<xs:element name="CargoHandlingType" type="handlingcode-type"/>
<xs:element name="CargoLACode" type="posint10-99-type" minOccurs="0"/>
<xs:element name="CargoCodeNST" type="cargocode-type"/>
<xs:element name="CargoCodeNST_3" type="cargocodeNST3-type" minOccurs="0"/>
<xs:element name="CargoNumberOfItems" type="posint-type" minOccurs="0"/>
<xs:element name="CargoGrossQuantity_TNE" type="posfloat-type"/>
<xs:element name="CargoPortOfLoading" type="locode-type" minOccurs="0"/>
<xs:element name="CargoPortOfDischarge" type="locode-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ============ simple types ============ -->
<xs:simpleType name="imoclass-type">
<xs:restriction base="xs:string">
<xs:minLength value="1" />
<xs:maxLength value="10" />
<xs:pattern value="[1-9]{1}(\.[1-9]{1}([A-Z]{1})?)?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="bay-type">
<xs:restriction base="xs:string">
<xs:minLength value='3'/>
<xs:maxLength value='3'/>
<xs:pattern value="[0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="cargocode-type">
<xs:restriction base="xs:string">
<xs:minLength value='2'/>
<xs:maxLength value='2'/>
<xs:pattern value="[0-9]+"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="cargocodeNST3-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='1'/>
<xs:pattern value="[0-9AB]"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="flashpointcel-type">
<xs:restriction base='xs:string'>
<xs:minLength value='1'/>
<xs:maxLength value='10'/>
<xs:pattern value="[&lt;&gt;]?[\-]?[0-9]+(\.[0-9]+)?"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="class7csi-type">
<xs:restriction base='xs:float'>
<xs:minInclusive value="0"/>
<xs:maxInclusive value="100"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="class7ti-type">
<xs:restriction base='xs:float'>
<xs:minInclusive value="0" />
<xs:maxInclusive value="50" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="class7cat-type">
<xs:restriction base="xs:integer">
<xs:enumeration value="1" />
<xs:enumeration value="2" />
<xs:enumeration value="3" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="risk-type">
<xs:restriction base="xs:string">
<xs:minLength value="0" />
<xs:maxLength value="11" />
</xs:restriction>
</xs:simpleType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="infclass-type">
<xs:restriction base="xs:string">
<xs:enumeration value="INF1"/>
<xs:enumeration value="INF2"/>
<xs:enumeration value="INF3"/>
</xs:restriction>
</xs:simpleType>
<!-- neu in NSW V5.0 packinggroup-type: "NONE" nicht mehr zulässig -->
<xs:simpleType name="packinggroup-type">
<xs:restriction base="xs:string">
<xs:enumeration value="I" />
<xs:enumeration value="II" />
<xs:enumeration value="III" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="flashpointinfo-type">
<xs:restriction base="xs:string">
<xs:enumeration value="NF"/>
<xs:enumeration value="GT60CEL"/>
<xs:enumeration value="LE60CEL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="handlingcode-type">
<xs:restriction base="xs:string">
<xs:enumeration value="LOAD"/>
<xs:enumeration value="DISCHARGE"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="polcat-type">
<xs:restriction base="xs:string">
<xs:enumeration value="X"/>
<xs:enumeration value="Y"/>
<xs:enumeration value="Z"/>
<xs:enumeration value="OS"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="hazard-type">
<xs:restriction base="xs:string">
<xs:enumeration value="P"/>
<xs:enumeration value="S"/>
<xs:enumeration value="S/P"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,195 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<!-- XML Schema:data exchange NSW - german ports optionale Meldetypen-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:include schemaLocation="basic_types.xsd"/>
<xs:include schemaLocation="bunker_reeder.xsd"/>
<xs:include schemaLocation="hazmat_reeder.xsd"/>
<xs:include schemaLocation="noanod_reeder.xsd"/>
<xs:include schemaLocation="owner_reeder.xsd"/>
<xs:include schemaLocation="pob_reeder.xsd"/>
<xs:include schemaLocation="vessel_reeder.xsd"/>
<xs:include schemaLocation="serv_reeder.xsd"/>
<xs:include schemaLocation="prearrival72_reeder.xsd"/>
<xs:include schemaLocation="sec_reeder.xsd"/>
<xs:include schemaLocation="mdh_reeder.xsd"/>
<xs:include schemaLocation="waste_reeder.xsd"/>
<xs:include schemaLocation="bpol_reeder.xsd"/>
<xs:include schemaLocation="pas_reeder.xsd"/>
<xs:include schemaLocation="crew_reeder.xsd"/>
<xs:include schemaLocation="tow_reeder.xsd"/>
<xs:include schemaLocation="info_reeder.xsd"/>
<xs:include schemaLocation="agent_reeder.xsd"/>
<xs:element name="nsw" type="nsw"/>
<xs:complexType name="nsw">
<xs:sequence>
<xs:element name="conveyance" type="conveyance"/>
</xs:sequence>
<xs:attribute name="xml_version" type="xs:string" use="required" fixed="HIS-NORD NSW_V1-0"/>
<xs:attribute name="protect_version" type="xs:string" use="required" fixed="PROTE11"/>
<xs:attribute name="date_registration" type="xs:dateTime" use="required"/>
<xs:attribute name="message_sender" type="xs:string" use="required"/>
<xs:attribute name="message_recipient" type="xs:string" use="required"/>
<xs:attribute name="document_reference" type="xs:string" use="required"/>
</xs:complexType>
<xs:complexType name="conveyance">
<xs:sequence>
<xs:element name="code" type="string1-99-type"/>
<xs:choice id="visit">
<xs:element name="VisitId" type="visitid-type"/>
<xs:element name="TransitId" type="transitid-type"/>
<xs:sequence>
<xs:element name="name" type="referenceid-type" minOccurs="0"/>
<xs:choice id="imo">
<xs:element name="IMONumber" type="imonumber-type"/>
<xs:element name="ENINumber" type="eninumber-type"/>
</xs:choice>
<xs:element name="PortOfCall" type="locode-type"/>
<xs:element name="ETAPortOfCall" type="xs:date"/>
</xs:sequence>
</xs:choice>
<xs:element name="owner_sender" type="broker_owner"/>
<!--OPTIONALE MELDETYPEN-->
<xs:choice>
<xs:element name="STORNO" type="y-type" minOccurs="0"/>
<xs:sequence>
<xs:choice id="stat" minOccurs="0">
<xs:element name="STAT" type="vessel-type"/>
<xs:element name="RESET_STAT" type="y-type"/>
</xs:choice>
<xs:choice id="noanod" minOccurs="0">
<xs:element name="NOANOD" type="noanod"/>
<xs:element name="RESET_NOANOD" type="y-type"/>
</xs:choice>
<xs:choice id="ata" minOccurs="0">
<xs:element name="ATA" type="xs:dateTime"/>
<xs:element name="RESET_ATA" type="y-type"/>
</xs:choice>
<xs:choice id="atd" minOccurs="0">
<xs:element name="ATD" type="xs:dateTime"/>
<xs:element name="RESET_ATD" type="y-type"/>
</xs:choice>
<xs:choice id="poba" minOccurs="0">
<xs:element name="POBA" type="poba"/>
<xs:element name="RESET_POBA" type="y-type"/>
</xs:choice>
<xs:choice id="pobd" minOccurs="0">
<xs:element name="POBD" type="pobd"/>
<xs:element name="RESET_POBD" type="y-type"/>
</xs:choice>
<xs:choice id="nameofmaster" minOccurs="0">
<xs:element name="NameOfMaster" type="string1-99-type"/>
<xs:element name="RESET_NameOfMaster" type="y-type"/>
</xs:choice>
<xs:choice id="tiefa" minOccurs="0">
<xs:element name="TIEFA" type="posfloat-type"/>
<xs:element name="RESET_TIEFA" type="y-type"/>
</xs:choice>
<xs:choice id="tiefd" minOccurs="0">
<xs:element name="TIEFD" type="posfloat-type"/>
<xs:element name="RESET_TIEFD" type="y-type"/>
</xs:choice>
<xs:choice id="info" minOccurs="0">
<xs:element name="INFO" type="info"/>
<xs:element name="RESET_INFO" type="y-type"/>
</xs:choice>
<xs:choice id="bkra" minOccurs="0">
<xs:element name="BKRA" type="bkra"/>
<xs:element name="RESET_BKRA" type="y-type"/>
</xs:choice>
<xs:choice id="bkrd" minOccurs="0">
<xs:element name="BKRD" type="bkrd"/>
<xs:element name="RESET_BKRD" type="y-type"/>
</xs:choice>
<xs:choice id="haza" minOccurs="0">
<xs:element name="HAZA" type="haza"/>
<xs:element name="RESET_HAZA" type="y-type"/>
</xs:choice>
<xs:choice id="hazd" minOccurs="0">
<xs:element name="HAZD" type="hazd"/>
<xs:element name="RESET_HAZD" type="y-type"/>
</xs:choice>
<xs:choice id="ladg" minOccurs="0">
<xs:element name="LADG" type="generalcargo"/>
<xs:element name="RESET_LADG" type="y-type"/>
</xs:choice>
<xs:choice id="serv" minOccurs="0">
<xs:element name="SERV" type="serv"/>
<xs:element name="RESET_SERV" type="y-type"/>
</xs:choice>
<xs:choice id="pre72" minOccurs="0">
<xs:element name="PRE72H" type="pre72"/>
<xs:element name="RESET_PRE72H" type="y-type"/>
</xs:choice>
<xs:choice id="sec" minOccurs="0">
<xs:element name="SEC" type="sec"/>
<xs:element name="RESET_SEC" type="y-type"/>
</xs:choice>
<xs:choice id="mdh" minOccurs="0">
<xs:element name="MDH" type="mdh"/>
<xs:element name="RESET_MDH" type="y-type"/>
</xs:choice>
<xs:choice id="was" minOccurs="0">
<xs:element name="WAS" type="was"/>
<xs:element name="RESET_WAS" type="y-type"/>
</xs:choice>
<xs:choice id="bpol" minOccurs="0">
<xs:element name="BPOL" type="bpol"/>
<xs:element name="RESET_BPOL" type="y-type"/>
</xs:choice>
<xs:choice id="pas" minOccurs="0">
<xs:element name="PAS" type="pas"/>
<xs:element name="RESET_PAS" type="y-type"/>
</xs:choice>
<xs:choice id="crew" minOccurs="0">
<xs:element name="CREW" type="crew"/>
<xs:element name="RESET_CREW" type="y-type"/>
</xs:choice>
<xs:choice id="towa" minOccurs="0">
<xs:element name="TOWA" type="towa"/>
<xs:element name="RESET_TOWA" type="y-type"/>
</xs:choice>
<xs:choice id="towd" minOccurs="0">
<xs:element name="TOWD" type="towd"/>
<xs:element name="RESET_TOWD" type="y-type"/>
</xs:choice>
<xs:choice id="agnt" minOccurs="0">
<xs:element name="AGNT" type="agnt"/>
<xs:element name="RESET_AGNT" type="y-type"/>
</xs:choice>
</xs:sequence>
</xs:choice>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,27 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="info">
<xs:sequence>
<xs:element name="ShippingArea" type="shippingarea-type"/>
<xs:element name="PortArea" type="string2-4-type"/>
<xs:element name="RequestedPositionInPortOfCall" type="string1-99-type"/>
<xs:element name="SpecialRequirementsOfShipAtBerth" type="string1-255-type" minOccurs="0"/>
<xs:element name="ConstructionCharacteristicsOfShip" type="string0-99-type" minOccurs="0"/>
<xs:element name="BowThrusterPower" type="string0-24-type" minOccurs="0"/>
<xs:element name="SternThrusterPower" type="string0-24-type" minOccurs="0"/>
<xs:element name="FumigatedBulkCargo" type="yorn-type"/>
<xs:element name="DeadWeightSummer_TNE" type="xs:float" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="shippingarea-type">
<xs:restriction base="xs:string">
<xs:enumeration value="NORTH_BALTIC_SEA"/>
<xs:enumeration value="EUROPE"/>
<xs:enumeration value="OVERSEAS"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,80 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="mdh">
<xs:sequence>
<xs:choice>
<xs:sequence>
<xs:element name="MDHSimplification" type="y-type"/>
<!-- neu in NSW V5.0 PortOfCallWhereCompleteMDHNotified: Pflichtfeld, wenn Meldungsvereinfachung; Hier ist der deutsche Hafen anzugeben,
bei dessen Anlauf die vollständige Information zum Meldetyp abgegeben wurde (Fehler 161) -->
<xs:element name="PortOfCallWhereCompleteMDHNotified" type="locode-type"/>
</xs:sequence>
<xs:sequence>
<xs:element name="NonAccidentialDeathsDuringVoyage" type="yorn-type"/>
<xs:element name="NonAccidentialDeathsDuringVoyageCount" type="posint-type" minOccurs="0"/>
<xs:element name="SuspisionInfectiousNature" type="yorn-type"/>
<xs:element name="NumberOfIllPersonsHigherThanExpected" type="yorn-type"/>
<xs:element name="NumberOfIllPersons" type="posint-type" minOccurs="0"/>
<xs:element name="SickPersonsOnBoard" type="yorn-type"/>
<xs:element name="MedicalConsulted" type="yorn-type"/>
<xs:element name="AwareOfConditionsForFurtherInfections" type="yorn-type"/>
<xs:element name="SanitaryMeasuresApplied" type="yorn-type"/>
<xs:element name="SanitaryMeasuresDetails" type="sanitarydetail" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="StowawaysDetected" type="yorn-type"/>
<xs:element name="StowawaysJoiningLocation" type="string1-99-type" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SickAnimalOrPetOnBoard" type="yorn-type"/>
<xs:element name="ValidSanitaryControlExemptionOrCertificateOnBoard" type="yorn-type"/>
<xs:element name="ValidSanitaryControlExemptionOrCertificate" type="sanitarycertificate" minOccurs="0"/>
<xs:element name="SanitaryControlReinspectionRequired" type="yorn-type"/>
<xs:element name="InfectedAreaVisited" type="yorn-type"/>
<xs:element name="InfectedArea" type="infectedarea" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="PortsOfCallLast30Days" type="portofcalls"/>
</xs:sequence>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sanitarydetail">
<xs:sequence>
<xs:element name="SanitaryMeasuresType" type="string1-99-type"/>
<xs:element name="SanitaryMeasuresLocation" type="string1-99-type"/>
<xs:element name="SanitaryMeasuresDate" type="xs:date"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="sanitarycertificate">
<xs:sequence>
<xs:element name="PlaceOfIssue" type="string1-99-type"/>
<xs:element name="DateOfIssue" type="xs:date"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="infectedarea">
<xs:sequence>
<xs:element name="InfectedAreaPort" type="string1-99-type"/>
<xs:element name="InfectedAreaDate" type="xs:date"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="portofcalls">
<xs:sequence>
<xs:element name="PortOfCallLast30Days" type="portofcallmdh" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="portofcallmdh">
<xs:sequence>
<xs:element name="PortOfCallLast30DaysLocode" type="locode-type"/>
<xs:element name="PortOfCallLast30DaysDateOfDeparture" type="xs:date"/>
<xs:element name="PortOfCallLast30DaysCrewMembersJoined" type="yorn-type"/>
<xs:element name="PortOfCallLast30DaysCrewJoinedShip" type="crewjoined" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="crewjoined">
<xs:sequence>
<xs:element name="PortOfCallLast30DaysCrewJoinedShipName" type="string1-99-type" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,33 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="noanod">
<xs:sequence>
<xs:element name="ETAToPortOfCall" type="xs:dateTime"/>
<xs:element name="ETDFromPortOfCall" type="xs:dateTime"/>
<xs:element name="CallPurposes" type="callpurposes" minOccurs="0"/>
<xs:element name="LastPort" type="locode-type"/>
<xs:element name="ETDFromLastPort" type="xs:dateTime" minOccurs="0"/>
<xs:element name="NextPort" type="locode-type"/>
<xs:element name="ETAToNextPort" type="xs:dateTime" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="callpurposes">
<xs:sequence>
<xs:element name="CallPurpose" type="callpurpose" maxOccurs="9" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="callpurpose">
<xs:sequence>
<xs:element name="CallPurposeCode" type="callpurposecode-type"/>
<xs:element name="CallPurposeDescription" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ============ simple types ============ -->
<xs:simpleType name="callpurposecode-type">
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxExclusive value="1000"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,41 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="broker_owner">
<xs:sequence>
<xs:element name="name_short" type="string1-99-type"/>
<xs:element name="name_long" type="string1-99-type"/>
<xs:element name="address" type="address-type"/>
<xs:element name="contact" type="contacts"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="address-type">
<xs:sequence>
<xs:element name="StreetNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="Place" type="string1-99-type" minOccurs="0"/>
<xs:element name="PostCode" type="string1-24-type" minOccurs="0"/>
<xs:element name="Locode" type="locode-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="contacts">
<xs:sequence>
<xs:element name="name" type="string1-99-type"/>
<xs:element name="firstname" type="string1-99-type" minOccurs="0"/>
<xs:element name="phone" type="string1-99-type"/>
<xs:element name="fax" type="string1-99-type" minOccurs="0"/>
<xs:element name="email" type="string1-99-type"/>
</xs:sequence>
</xs:complexType>
<!-- ============ simple types ============ -->
<xs:simpleType name="referenceid-type">
<xs:restriction base="xs:string">
<xs:minLength value='0' />
<xs:maxLength value='100' />
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,28 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="pas">
<xs:sequence>
<xs:element name="Passenger" type="passenger" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="passenger">
<xs:sequence>
<xs:element name="PassengerLastName" type="string1-99-type"/>
<xs:element name="PassengerFirstName" type="string1-99-type"/>
<xs:element name="PassengerPlaceOfBirth" type="string1-99-type"/>
<xs:element name="PassengerDateOfBirth" type="xs:date"/>
<xs:element name="PassengerGender" type="gender-type" minOccurs="0"/>
<xs:element name="PassengerNationality" type="flag-type"/>
<xs:element name="PassengerIdentityDocumentType" type="document-type"/>
<xs:element name="PassengerIdentityDocumentId" type="string1-99-type"/>
<xs:element name="PassengerVisaNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="PassengerPortOfEmbarkation" type="locode-type"/>
<xs:element name="PassengerPortOfDisembarkation" type="locode-type"/>
<xs:element name="PassengerInTransit" type="yorn-type"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,29 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="poba">
<xs:sequence>
<xs:element name="TotalPersonsOnBoardUponArrival" type="pob-type"/>
<xs:element name="TotalCrewMembersOnBoardUponArrival" type="posint-type"/>
<xs:element name="TotalPassengersOnBoardUponArrival" type="posint0-type"/>
<xs:element name="TotalStowawaysOnBoardUponArrival" type="posint0-type"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="pobd">
<xs:sequence>
<xs:element name="TotalPersonsOnBoardUponDeparture" type="pob-type"/>
<xs:element name="TotalCrewMembersOnBoardUponDeparture" type="posint-type"/>
<xs:element name="TotalPassengersOnBoardUponDeparture" type="posint0-type"/>
<xs:element name="TotalStowawaysOnBoardUponDeparture" type="posint0-type"/>
</xs:sequence>
</xs:complexType>
<!-- ============ simple types ============ -->
<xs:simpleType name="pob-type">
<xs:restriction base="xs:integer">
<xs:minInclusive value="1"/>
<xs:maxInclusive value="99998"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,41 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="pre72">
<xs:sequence>
<xs:element name="Tanker" type="yorn-type"/>
<xs:element name="TankerDetails" type="tankerdetails" minOccurs="0"/>
<xs:element name="PlannedOperations" type="string1-99-type"/>
<xs:element name="PlannedWorks" type="string1-255-type"/>
<xs:element name="DateOfLastExpandedInspection" type="xs:date" minOccurs="0"/>
<xs:element name="PlannedPeriodOfStay_HUR" type="posfloat0-type"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="tankerdetails">
<xs:sequence>
<xs:element name="TankerHullConfiguration" type="hullconfig-type"/>
<xs:element name="ConditionCargoBallastTanks" type="cargocondition-type"/>
<!-- neu in NSW V5.0 Feld umbenannt NatureOfCargo wird TypeOfCargo -->
<xs:element name="TypeOfCargo" type="string1-99-type" minOccurs="0"/>
<xs:element name="VolumeOfCargo_TNE" type="posfloat-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="hullconfig-type">
<xs:restriction base="xs:string">
<xs:enumeration value="SINGLE_HULL"/>
<xs:enumeration value="SINGLE_HULL_WITH_SBT"/>
<xs:enumeration value="DOUBLE_HULL"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="cargocondition-type">
<xs:restriction base="xs:string">
<xs:enumeration value="FULL"/>
<xs:enumeration value="EMPTY"/>
<xs:enumeration value="INERTED"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,142 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="sec">
<xs:sequence>
<xs:element name="KielCanalPassage" type="KielCanalPassage" minOccurs="0"/>
<xs:element name="CurrentShipSecurityLevel" type="posint1-3-type"/>
<xs:choice>
<xs:sequence>
<xs:element name="SECSimplification" type="y-type"/>
<xs:element name="PortOfCallWhereCompleteSECNotified" type="locode-type"/>
</xs:sequence>
<xs:sequence>
<xs:element name="CSOLastName" type="string1-99-type"/>
<xs:element name="CSOFirstName" type="string1-99-type" minOccurs="0"/>
<xs:element name="CSOPhone" type="string1-99-type"/>
<xs:element name="CSOFax" type="string1-99-type" minOccurs="0"/>
<xs:element name="CSOEMail" type="string1-99-type" minOccurs="0"/>
<xs:element name="ValidISSCOnBoard" type="yorn-type"/>
<xs:element name="ReasonsForNoValidISSC" type="string1-255-type" minOccurs="0"/>
<xs:element name="ISSCType" type="issc-type"/>
<xs:element name="ISSCIssuerType" type="isscissuer-type"/>
<xs:element name="ISSCIssuerName" type="string1-99-type"/>
<xs:element name="ISSCDateOfExpiration" type="xs:date"/>
<xs:element name="ApprovedSecurityPlanOnBoard" type="yorn-type"/>
<xs:element name="PortFacilityOfArrival" type="string1-99-type" minOccurs="0"/>
<xs:element name="GeneralDescriptionOfCargo" type="cargodescription-type"/>
<xs:element name="LastTenPortFacilitiesCalled" type="last10port" maxOccurs="10"/>
<xs:element name="ShipToShipActivities" type="lastactivity" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:choice>
</xs:sequence>
</xs:complexType>
<xs:complexType name="KielCanalPassage">
<xs:sequence>
<xs:element name="KielCanalPassagePlanned" type="y-type"/>
<xs:element name="KielCanalPassagePlannedIncoming" minOccurs="0" type="xs:dateTime"/>
<xs:element name="KielCanalPassagePlannedOutgoing" minOccurs="0" type="xs:dateTime"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="last10port">
<xs:sequence>
<xs:element name="PortFacilityPortName" type="string1-99-type" minOccurs="0"/>
<xs:element name="PortFacilityPortCountry" type="string1-99-type" minOccurs="0"/>
<!-- neu in NSW V5.0 PortFacilityPortLoCode: Pflichtfeld -->
<xs:element name="PortFacilityPortLoCode" type="locode-type" />
<xs:element name="PortFacilityDateOfArrival" type="xs:date"/>
<xs:element name="PortFacilityDateOfDeparture" type="xs:date"/>
<xs:element name="PortFacilityShipSecurityLevel" type="posint1-3-type"/>
<xs:element name="PortFacilitySecurityMattersToReport" type="string1-255-type" minOccurs="0"/>
<xs:element name="PortFacilityGISISCode" type="unnumber-type"/>
<!-- neu in NSW V5.0 PortFacilityGISISCodeLoCode: LOCODE zum GISIS Code der Hafenanlage im jeweiligen Hafen nach ISPS -->
<xs:element minOccurs="0" name="PortFacilityGISISCodeLoCode" type="locode-type" />
</xs:sequence>
</xs:complexType>
<xs:complexType name="lastactivity">
<xs:sequence>
<xs:element name="ShipToShipActivityLocation" type="location"/>
<xs:element name="ShipToShipActivityDateFrom" type="xs:date"/>
<xs:element name="ShipToShipActivityDateTo" type="xs:date"/>
<!-- neu in NSW V5.0 ShipToShipActivityType: erlaubt 1-23, 98 (EDIFACT code 8025, D16A) -->
<xs:element name="ShipToShipActivityType">
<xs:simpleType>
<xs:restriction base="xs:integer">
<xs:enumeration value="1"/>
<xs:enumeration value="2"/>
<xs:enumeration value="3"/>
<xs:enumeration value="4"/>
<xs:enumeration value="5"/>
<xs:enumeration value="6"/>
<xs:enumeration value="7"/>
<xs:enumeration value="8"/>
<xs:enumeration value="9"/>
<xs:enumeration value="10"/>
<xs:enumeration value="11"/>
<xs:enumeration value="12"/>
<xs:enumeration value="13"/>
<xs:enumeration value="14"/>
<xs:enumeration value="15"/>
<xs:enumeration value="16"/>
<xs:enumeration value="17"/>
<xs:enumeration value="18"/>
<xs:enumeration value="19"/>
<xs:enumeration value="20"/>
<xs:enumeration value="21"/>
<xs:enumeration value="22"/>
<xs:enumeration value="23"/>
<xs:enumeration value="98"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="ShipToShipActivitySecurityMattersToReportOf" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="location">
<xs:choice maxOccurs="3">
<xs:element name="ShipToShipActivityLocationName" type="string1-255-type"/>
<xs:element name="ShipToShipActivityLocationLoCode" type="locode-type"/>
<xs:element name="ShipToShipActivityLocationCoordinates" type="coordinates"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="coordinates">
<xs:sequence>
<xs:element name="ShipToShipActivityLocationCoordinatesLatitude" type="xs:integer"/>
<xs:element name="ShipToShipActivityLocationCoordinatesLongitude" type="xs:integer"/>
</xs:sequence>
</xs:complexType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="issc-type">
<xs:restriction base="xs:string">
<xs:enumeration value="FULL"/>
<xs:enumeration value="INTERIM"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="isscissuer-type">
<xs:restriction base="xs:string">
<xs:enumeration value="ADMINISTRATION"/>
<xs:enumeration value="RSO"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="cargodescription-type">
<xs:restriction base="xs:string">
<xs:enumeration value="CONTAINER"/>
<xs:enumeration value="VEHICLES"/>
<xs:enumeration value="CONVENTIONAL_GENERAL_CARGO"/>
<xs:enumeration value="DRY_CARGO_IN_BULK"/>
<xs:enumeration value="LIQUID_CARGO_IN_BULK"/>
<xs:enumeration value="EMPTY"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,19 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="serv">
<xs:sequence>
<xs:element name="Service" type="service" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="service">
<xs:sequence>
<xs:element name="ServiceName" type="string1-99-type" minOccurs="0"/>
<xs:element name="ServiceBeneficiary" type="string1-99-type"/>
<xs:element name="ServiceInvoiceRecipient" type="string1-99-type"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,68 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 11.04.2017 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="towa">
<xs:sequence>
<xs:element name="TowageOnArrival" type="arrival" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="towd">
<xs:sequence>
<xs:element name="TowageOnDeparture" type="departure" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="arrival">
<xs:sequence>
<xs:element name="TowageOnArrivalName" type="string1-99-type"/>
<xs:element name="TowageOnArrivalFlag" type="flag-type"/>
<xs:element name="TowageOnArrivalOperator" type="arrivaloperator" minOccurs="0"/>
<xs:element name="TowageOnArrivalGrossTonnage" type="posint-type"/>
<xs:element name="TowageOnArrivalLengthOverall_MTR" type="posfloat-type"/>
<xs:element name="TowageOnArrivalBeam_MTR" type="posfloat-type"/>
<xs:element name="TowageOnArrivalPurposeOfCall" type="string1-99-type"/>
<xs:element name="TowageOnArrivalDraught_DMT" type="posfloat-type"/>
<xs:element name="TowageOnArrivalRemarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="departure">
<xs:sequence>
<xs:element name="TowageOnDepartureName" type="string1-99-type"/>
<xs:element name="TowageOnDepartureFlag" type="flag-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperator" type="departureoperator" minOccurs="0"/>
<xs:element name="TowageOnDepartureDraught_DMT" type="posfloat-type"/>
<xs:element name="TowageOnDepartureLengthOverall_MTR" type="posfloat-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureBeam_MTR" type="posfloat-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureRemarks" type="string1-255-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="arrivaloperator">
<xs:sequence>
<xs:element name="TowageOnArrivalOperatorCompanyName" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorStreetAndNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorPostalCode" type="string1-24-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorCity" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorCountry" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorPhone" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorFax" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnArrivalOperatorEMail" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="departureoperator">
<xs:sequence>
<xs:element name="TowageOnDepartureOperatorCompanyName" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorStreetAndNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorPostalCode" type="string1-24-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorCity" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorCountry" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorPhone" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorFax" type="string1-99-type" minOccurs="0"/>
<xs:element name="TowageOnDepartureOperatorEMail" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:schema>

View File

@ -0,0 +1,98 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="vessel-type">
<xs:sequence>
<xs:element name="ShipName" type="string1-99-type"/>
<xs:element name="CallSign" type="callsign-type"/>
<xs:element name="MMSINumber" type="mmsinumber-type"/>
<xs:element name="Flag" type="flag-type"/>
<xs:element name="LengthOverall_MTR" type="posfloat-type"/>
<xs:element name="Beam_MTR" type="posfloat-type"/>
<xs:element name="GrossTonnage" type="posint-type"/>
<xs:element name="PortOfRegistry" type="locode-type"/>
<!-- neu in NSW V5.0 Liste InmarsatCallNumbers -->
<xs:element minOccurs="0" name="InmarsatCallNumbers">
<xs:complexType>
<xs:sequence maxOccurs="5" minOccurs="1">
<xs:element name="InmarsatCallNumber">
<xs:simpleType>
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
<xs:maxLength value="50"/>
<xs:pattern value="[^,_&amp;]*"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
</xs:sequence>
</xs:complexType>
</xs:element>
<xs:element name="TransportMode" type="transportmode-type"/>
<xs:element name="ShipType" type="ship-type"/>
<xs:element name="ISMCompany" type="ismcompany" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ismcompany">
<xs:sequence>
<xs:element name="ISMCompanyName" type="string1-99-type"/>
<xs:element name="ISMCompanyId" type="companyid-type"/>
<xs:element name="ISMCompanyStreetAndNumber" type="string1-99-type" minOccurs="0"/>
<xs:element name="ISMCompanyPostalCode" type="string1-24-type" minOccurs="0"/>
<xs:element name="ISMCompanyCity" type="string1-99-type" minOccurs="0"/>
<xs:element name="ISMCompanyCountry" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ============ simple types ============ -->
<xs:simpleType name="imonumber-type">
<xs:restriction base="xs:string">
<xs:minLength value="7"/>
<xs:maxLength value="7"/>
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="callsign-type">
<xs:restriction base='xs:string'>
<xs:minLength value='4' />
<xs:maxLength value='7' />
<xs:pattern value="[A-Za-z0-9]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="mmsinumber-type">
<xs:restriction base='xs:string'>
<xs:minLength value='9' />
<xs:maxLength value='10' />
<xs:pattern value="[0-9]*" />
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="eninumber-type">
<xs:restriction base="xs:string">
<xs:minLength value='8'/>
<xs:maxLength value='8'/>
<xs:pattern value="[0-9]*"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="transportmode-type">
<xs:restriction base="xs:string">
<xs:minLength value='1'/>
<xs:maxLength value='1'/>
<xs:pattern value="(1|8)"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="ship-type">
<xs:restriction base="xs:string">
<xs:minLength value='2'/>
<xs:maxLength value='3'/>
<xs:pattern value="[A-Z0-9]*"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -0,0 +1,62 @@
<?xml version="1.0"?>
<!-- DATEN + DIENSTE GmbH Rostock, Version vom 19.02.2018 -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema">
<xs:complexType name="was">
<xs:choice>
<xs:element name="WasteDisposalValidExemption" type="y-type"/>
<xs:sequence>
<xs:element name="LastWasteDisposalPort" type="locode-type"/>
<xs:element name="LastWasteDisposalDate" type="xs:date"/>
<xs:element name="WasteDisposalServiceProviderName" type="string1-99-type" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="WasteDisposalDelivery" type="wastedelivery-type"/>
<xs:element name="Waste" type="waste" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ConfirmationOfCorrectnessAndSufficiency" type="y-type"/>
</xs:sequence>
</xs:choice>
</xs:complexType>
<xs:complexType name="waste">
<xs:sequence>
<xs:element name="WasteType" type="wastetyp" minOccurs="0"/>
<xs:element name="WasteDisposalAmount_MTQ" type="posfloat0-type"/>
<!-- neu in NSW V5.0 Beschreibung geändert für WasteDisposedAtLastPort_MTQ: "Menge des Abfalls, der am letzten Hafen abgegeben wurde" -->
<xs:element name="WasteDisposedAtLastPort_MTQ" type="posfloat0-type"/>
<xs:element name="WasteDetails" type="wastedetails" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="wastetyp">
<xs:sequence>
<xs:element name="WasteCode" type="waste-type"/>
<xs:element name="WasteDescription" type="string1-99-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="wastedetails">
<xs:sequence>
<xs:element name="WasteCapacity_MTQ" type="posfloat0-type" minOccurs="0"/>
<xs:element name="WasteAmountRetained_MTQ" type="posfloat0-type" minOccurs="0"/>
<xs:element name="WasteDisposalPort" type="locode-type" minOccurs="0"/>
<xs:element name="WasteAmountGeneratedTillNextPort_MTQ" type="posfloat0-type" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<!-- ======== simple types - enumerations =========== -->
<xs:simpleType name="wastedelivery-type">
<xs:restriction base="xs:string">
<xs:enumeration value="ALL"/>
<xs:enumeration value="SOME"/>
<xs:enumeration value="NONE"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="waste-type">
<xs:restriction base="xs:integer">
<xs:minInclusive value="1000"/>
<xs:maxInclusive value="9999"/>
</xs:restriction>
</xs:simpleType>
</xs:schema>

View File

@ -2,6 +2,6 @@
[assembly: AssemblyCompany("schick Informatik")]
[assembly: AssemblyProduct("BSMD NSW interface")]
[assembly: AssemblyInformationalVersion("3.9.10")]
[assembly: AssemblyCopyright("Copyright © 2014-2017 schick Informatik")]
[assembly: AssemblyInformationalVersion("3.9.11")]
[assembly: AssemblyCopyright("Copyright © 2014-2018 schick Informatik")]
[assembly: AssemblyTrademark("")]

View File

@ -1,4 +1,4 @@
using System.Reflection;
[assembly: AssemblyVersion("3.9.10.*")]
[assembly: AssemblyVersion("3.9.11.*")]

View File

@ -187,7 +187,14 @@ namespace bsmd.database
if (locationInsufficient)
{
violations.Add(RuleEngine.CreateViolation(ValidationCode.V701, null, null , this.Title, this.Identifier, this.SEC.Tablename));
}
}
if(!this.ShipToShipActivityLocationLoCode.IsNullOrEmpty() && (RuleEngine.LocodeChecker != null))
{
if (!RuleEngine.LocodeChecker(this.ShipToShipActivityLocationLoCode, RuleEngine.LocodeMode.STANDARD))
errors.Add(RuleEngine.CreateError(ValidationCode.LOCODE, null, null, this.Title, this.Identifier, this.SEC.Tablename));
}
}
#endregion

View File

@ -215,12 +215,10 @@ namespace bsmd.database
public override void Validate(List<MessageError> errors, List<MessageViolation> violations)
{
if (this.WasteType.HasValue &&
((this.WasteType.Value == (int)3) || (this.WasteType.Value == (int)8) || (this.WasteType.Value == (int)9)) &&
this.WasteDescription.IsNullOrEmpty())
if (this.WasteType.HasValue && (this.WasteType.Value == 1300) && this.WasteDescription.IsNullOrEmpty())
violations.Add(RuleEngine.CreateViolation(ValidationCode.V781, "WasteDescription", null, this.Title, this.Identifier, this.Tablename));
// TODO: 782
// TODO: 782
}
#endregion