Version 3.0.7: Alle Korrekturen für NSW 3.0 (bis zum Go-Live am 31.3.)

This commit is contained in:
Daniel Schick 2016-03-31 17:14:13 +00:00
parent c16160cb29
commit b5ff458b83
16 changed files with 3236 additions and 56 deletions

Binary file not shown.

View File

@ -83,7 +83,7 @@ namespace SendNSWMessageService
List<Message> messages = DBManager.Instance.GetMessagesForCore(core);
// TODO: Das muss wieder entfernt werden wenn 3.0 funktional ist
if (core.InitialHIS != Message.NSWProvider.DBH_TEST) continue; // ignore everything else
// if (core.InitialHIS != Message.NSWProvider.DBH_TEST) continue; // ignore everything else
if (core.InitialHIS == Message.NSWProvider.DUDR)
{
@ -226,7 +226,7 @@ namespace SendNSWMessageService
switch (message.HIS)
{
// TODO: Das muss wieder entfernt werden wenn 3.0 funktional geht
// case Message.NSWProvider.DBH:
case Message.NSWProvider.DBH:
case Message.NSWProvider.DBH_TEST:
sendSucceeded = bsmd.dbh.Request.SendMessage(message, (message.HIS == Message.NSWProvider.DBH_TEST));
if (!sendSucceeded)

View File

@ -65,7 +65,7 @@ namespace bsmd.database
public static DateTime? TryParseDateTime(string text)
{
DateTime date;
if(DateTime.TryParse(text, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.AssumeUniversal, out date))
if(DateTime.TryParse(text, DateTimeFormatInfo.InvariantInfo, DateTimeStyles.AdjustToUniversal, out date))
{
return date;
}

View File

@ -49,6 +49,7 @@ namespace bsmd.database
[ShowReport]
[LookupName("INFO.PortArea")]
[Validation(ValidationCode.NOT_NULL)]
public string PortArea { get; set; }
public string BowThrusterPower { get; set; }

View File

@ -193,5 +193,18 @@ namespace bsmd.database
#endregion
#region Validation
public override void Validate(List<MessageError> errors, List<MessageViolation> violations)
{
if (this.PassengerPortOfDisembarkation.Equals("ZZUKN"))
violations.Add(RuleEngine.CreateViolation(ValidationCode.LOCODE, "Port of disembarkation unspecified!", null));
if (this.PassengerPortOfEmbarkation.Equals("ZZUKN"))
violations.Add(RuleEngine.CreateViolation(ValidationCode.LOCODE, "Port of embarkation unspecified!", null));
}
#endregion
}
}

View File

@ -2,6 +2,6 @@
[assembly: AssemblyCompany("Informatikbüro Daniel Schick")]
[assembly: AssemblyProduct("BSMD NSW interface")]
[assembly: AssemblyInformationalVersion("3.0.6")]
[assembly: AssemblyInformationalVersion("3.0.7")]
[assembly: AssemblyCopyright("Copyright © 2014-2016 Informatikbüro Daniel Schick. All rights reserved.")]
[assembly: AssemblyTrademark("")]

View File

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

View File

@ -41,7 +41,7 @@ namespace bsmd.database
case 5: return "GARBATE-PLASTIC";
case 6: return "GARBAGE-OTHER";
case 7: return "SEWAGE";
case 8: return "CARGO-ASSOSIATED_WASTE";
case 8: return "CARGO-ASSOCIATED_WASTE";
case 9: return "CARGO-RESIDUES";
default: return "";
}

View File

@ -6750,8 +6750,8 @@ namespace bsmd.dbh.request
Item7_SEWAGE,
/// <remarks/>
[System.Xml.Serialization.XmlEnumAttribute("8_CARGO-ASSOSIATED_WASTE")]
Item8_CARGOASSOSIATED_WASTE,
[System.Xml.Serialization.XmlEnumAttribute("8_CARGO-ASSOCIATED_WASTE")]
Item8_CARGOASSOCIATED_WASTE,
/// <remarks/>
[System.Xml.Serialization.XmlEnumAttribute("9_CARGO-RESIDUES")]

View File

@ -667,17 +667,18 @@ namespace bsmd.dbh
rootPre.Tanker = pre72h.Tanker ?? false ? RootSECValidISSCOnBoard.Y : RootSECValidISSCOnBoard.N;
if (pre72h.Tanker ?? false)
{
rootPre.TankerDetails = new RootPRE72HTankerDetails();
if (pre72h.TankerHullConfiguration.HasValue)
rootPre.TankerDetails.TankerHullConfiguration = (HullConfiguration)pre72h.TankerHullConfiguration.Value;
if (pre72h.ConditionCargoBallastTanks.HasValue)
rootPre.TankerDetails.ConditionCargoBallastTanks = (TankCondition)pre72h.ConditionCargoBallastTanks.Value;
rootPre.TankerDetails.NatureOfCargo = pre72h.NatureOfCargo;
rootPre.TankerDetails.VolumeOfCargo_TNESpecified = pre72h.VolumeOfCargo.HasValue;
}
rootPre.TankerDetails.VolumeOfCargo_Cargo_TNESpecified = pre72h.VolumeOfCargo.HasValue;
if (pre72h.VolumeOfCargo.HasValue)
rootPre.TankerDetails.VolumeOfCargo_Cargo_TNE = Decimal.Round((decimal)(pre72h.VolumeOfCargo.Value), 3);
if (pre72h.VolumeOfCargo.HasValue)
rootPre.TankerDetails.VolumeOfCargo_TNE = Decimal.Round((decimal) (pre72h.VolumeOfCargo.Value), 3);
}
rootPre.PlannedOperations = pre72h.PlannedOperations;
rootPre.PlannedWorks = pre72h.PlannedWorks;
rootPre.DateOfLastExpandedInspectionSpecified = pre72h.DateOfLastExpandedInspection.HasValue;

View File

@ -1147,7 +1147,7 @@ The provided value must not be more than 15 minutes in the future, otherwise Vio
<xs:documentation>Nature of cargo</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="VolumeOfCargo_TNE" type="DecimalPositive3">
<xs:element minOccurs="0" name="VolumeOfCargo_Cargo_TNE" type="DecimalPositive3">
<xs:annotation>
<xs:documentation>Volume of cargo in tons (TNE)</xs:documentation>
</xs:annotation>
@ -2947,7 +2947,7 @@ The provided value must not be more than 15 minutes in the future, otherwise Vio
<xs:enumeration value="5_GARBAGE-PLASTIC" />
<xs:enumeration value="6_GARBAGE-OTHER" />
<xs:enumeration value="7_SEWAGE" />
<xs:enumeration value="8_CARGO-ASSOSIATED_WASTE" />
<xs:enumeration value="8_CARGO-ASSOCIATED_WASTE" />
<xs:enumeration value="9_CARGO-RESIDUES" />
</xs:restriction>
</xs:simpleType>

View File

@ -3946,9 +3946,9 @@ namespace bsmd.dbh.DBHWebReference {
private string natureOfCargoField;
private decimal volumeOfCargo_TNEField;
private decimal volumeOfCargo_Cargo_TNEField;
private bool volumeOfCargo_TNEFieldSpecified;
private bool volumeOfCargo_Cargo_TNEFieldSpecified;
/// <remarks/>
public HullConfiguration TankerHullConfiguration {
@ -3981,23 +3981,23 @@ namespace bsmd.dbh.DBHWebReference {
}
/// <remarks/>
public decimal VolumeOfCargo_TNE {
public decimal VolumeOfCargo_Cargo_TNE {
get {
return this.volumeOfCargo_TNEField;
return this.volumeOfCargo_Cargo_TNEField;
}
set {
this.volumeOfCargo_TNEField = value;
this.volumeOfCargo_Cargo_TNEField = value;
}
}
/// <remarks/>
[System.Xml.Serialization.XmlIgnoreAttribute()]
public bool VolumeOfCargo_TNESpecified {
public bool VolumeOfCargo_Cargo_TNESpecified {
get {
return this.volumeOfCargo_TNEFieldSpecified;
return this.volumeOfCargo_Cargo_TNEFieldSpecified;
}
set {
this.volumeOfCargo_TNEFieldSpecified = value;
this.volumeOfCargo_Cargo_TNEFieldSpecified = value;
}
}
}
@ -5569,8 +5569,8 @@ namespace bsmd.dbh.DBHWebReference {
Item7_SEWAGE,
/// <remarks/>
[System.Xml.Serialization.XmlEnumAttribute("8_CARGO-ASSOSIATED_WASTE")]
Item8_CARGOASSOSIATED_WASTE,
[System.Xml.Serialization.XmlEnumAttribute("8_CARGO-ASSOCIATED_WASTE")]
Item8_CARGOASSOCIATED_WASTE,
/// <remarks/>
[System.Xml.Serialization.XmlEnumAttribute("9_CARGO-RESIDUES")]

View File

@ -1171,7 +1171,7 @@ namespace bsmd.hisnord
waste _aWaste = new waste();
string tempWasteType = was.Waste[i].WasteTypeDisplay ?? "";
// im Gegensatz zu Spec gibt überfl. Description einen Parse-Fehler :(
if (tempWasteType.Equals("WASTE_OILS-OTHERS") || tempWasteType.Equals("GARBAGE-OTHER") || tempWasteType.Equals("CARGO-RESIDUES") || tempWasteType.Equals("CARGO-ASSOSIATED_WASTE"))
if (tempWasteType.Equals("WASTE_OILS-OTHERS") || tempWasteType.Equals("GARBAGE-OTHER") || tempWasteType.Equals("CARGO-RESIDUES") || tempWasteType.Equals("CARGO-ASSOCIATED_WASTE"))
_aWaste.WasteDescription = was.Waste[i].WasteDescription;
else
_aWaste.WasteDescription = null;

View File

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:tns="http://e-declaration.dakosy.de/EdiMessages"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:tns="http://e-declaration.dakosy.de/EdiMessages"
targetNamespace="http://e-declaration.dakosy.de/EdiMessages"
elementFormDefault="qualified"
version="1.0">
version="1.1">
<xs:element name="eDeclarationMessage" type="tns:eDeclarationMessage"/>
<xs:complexType name="AdditionalValue">
<xs:annotation>
@ -16,6 +16,80 @@
</xs:sequence>
<xs:attribute name="LanguageCode" type="tns:LanguageCode2"/>
</xs:complexType>
<xs:complexType name="AGNT">
<xs:annotation>
<xs:documentation xml:lang="DE">Agent (Schiffsagent)</xs:documentation>
<xs:documentation xml:lang="EN">Agent (Ship agency)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="CompanyName" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Name der Schiffsagentur</xs:documentation>
<xs:documentation xml:lang="EN">Name of ship agency</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StreetName" type="tns:String_85" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Straße</xs:documentation>
<xs:documentation xml:lang="EN">Street</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StreetNumber" type="tns:String_7" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Hausnummer</xs:documentation>
<xs:documentation xml:lang="EN">Street number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PostalCode" type="tns:String_24" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Postleitzahl</xs:documentation>
<xs:documentation xml:lang="EN">Postal code</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="City" type="tns:String_99" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Ort</xs:documentation>
<xs:documentation xml:lang="EN">City</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Country" type="tns:String_99" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Land</xs:documentation>
<xs:documentation xml:lang="EN">Country</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LastName" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Nachname</xs:documentation>
<xs:documentation xml:lang="EN">Last name</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FirstName" type="tns:String_99" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Vorname</xs:documentation>
<xs:documentation xml:lang="EN">First name</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Phone" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Telefonnummer</xs:documentation>
<xs:documentation xml:lang="EN">Phone number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="Fax" type="tns:String_99" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Fax</xs:documentation>
<xs:documentation xml:lang="EN">Fax</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="EMail" type="tns:String_99" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">E-Mail</xs:documentation>
<xs:documentation xml:lang="EN">E-mail</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ATA">
<xs:annotation>
<xs:documentation xml:lang="DE">Meldung über die tatsächliche Ankunftszeit</xs:documentation>
@ -97,8 +171,8 @@
</xs:element>
<xs:element name="BunkerFuelQuantityTNE" type="xs:double" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Menge des Bunkertreibstoff in Tonnen</xs:documentation>
<xs:documentation xml:lang="EN">Quantity of bunker fuel per type</xs:documentation>
<xs:documentation xml:lang="DE">Menge des Bunkertreibstoff in Tonnen (Nachkomma: 3)</xs:documentation>
<xs:documentation xml:lang="EN">Quantity of bunker fuel per type (decimal: 3)</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
@ -109,7 +183,7 @@
<xs:documentation xml:lang="EN">Purpose of call for PoC (Required, if MessageType = FULL)</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="CallPurposeCode" type="xs:int">
<xs:element name="CallPurposeCode" type="xs:int" minOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Code</xs:documentation>
<xs:documentation xml:lang="EN">Code</xs:documentation>
@ -354,7 +428,7 @@
</xs:annotation>
<xs:complexType>
<xs:sequence>
<xs:element name="RequestId" type="tns:RequestId" maxOccurs="unbounded"/>
<xs:element name="RequestId" type="tns:RequestId" minOccurs="1" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
</xs:element>
@ -690,6 +764,12 @@
<xs:documentation xml:lang="EN">Shipping area</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PortArea" type="tns:String_2_4" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Hafengebiet</xs:documentation>
<xs:documentation xml:lang="EN">Port area</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="RequestedPositionInPortOfCall" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Gewünschter Liegeplatz</xs:documentation>
@ -708,6 +788,18 @@
<xs:documentation xml:lang="EN">Special construction characteristics of ship</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="BowThrusterPower" type="tns:String_24" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Leistung der Bugstrahler</xs:documentation>
<xs:documentation xml:lang="EN">Power of BowThruster</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SternThrusterPower" type="tns:String_24" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Leistung der Heckstrahler</xs:documentation>
<xs:documentation xml:lang="EN">Power of SternThruster</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="FumigatedBulkCargo" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Begaste Schüttgutladung (j/n) (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
@ -1011,7 +1103,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Any sanitary measures applied (y/n)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SanitaryMeasuresDetails" type="tns:SanitaryMeasuresDetails" minOccurs="0">
<xs:element name="SanitaryMeasuresDetails" type="tns:SanitaryMeasuresDetails" minOccurs="0" maxOccurs="unbounded">
<xs:annotation>
<xs:documentation xml:lang="DE">Gesundheitsmaßnahmen Details</xs:documentation>
<xs:documentation xml:lang="EN">Sanitary meassures details</xs:documentation>
@ -1031,8 +1123,11 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Location stowaways joined ship (if known)</xs:documentation>
<xs:documentation xml:lang="DE">Validierungsregel wenn im Element "MessageType" der Wert "FULL" steht: Falls Einschleicher an Bord gefunden wurden, muss der Ort wo sie an Bord gingen angegeben werden.</xs:documentation>
<xs:documentation xml:lang="EN">Validation rule if the element "MessageType" is "FULL": If stowaways were found on board, the place must be given where they boarded.</xs:documentation>
<xs:documentation xml:lang="DE">nur für API 2.1 verwenden</xs:documentation>
<xs:documentation xml:lang="EN">use only for API 2.1</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="StowawaysJoiningLocations" type="tns:StowawaysJoiningLocations" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="SickAnimalOrPetOnBoard" type="xs:boolean" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Befinden sich kranke Tiere oder Haustiere an Bord? (j/n)</xs:documentation>
@ -1058,7 +1153,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Has the ship visited an infected area (WHO)? (y/n)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="InfectedArea" type="tns:InfectedArea" minOccurs="0"/>
<xs:element name="InfectedArea" type="tns:InfectedArea" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="PortsOfCallLast30Days" type="tns:PortOfCallLast30Days" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
@ -1074,7 +1169,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Timestamp of the creation time of this message</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="MessageReferenceNumber" type="tns:Technical_ID">
<xs:element name="MessageReferenceNumber" type="tns:Technical_ID" minOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Eindeutige Referenz mit der die Nachricht identifiziert wird.</xs:documentation>
<xs:documentation xml:lang="EN">A unique reference number which identifies this message.</xs:documentation>
@ -1488,13 +1583,13 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Planned inspection / works</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DateOfLastExpandedInspection" type="xs:date">
<xs:element name="DateOfLastExpandedInspection" type="xs:date" minOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Datum der letzten erweiterten Überprüfung</xs:documentation>
<xs:documentation xml:lang="EN">Date of last expanded inspection</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="PlannedPeriodOfStayHUR" type="xs:double">
<xs:element name="PlannedPeriodOfStayHUR" type="xs:double" minOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Dauer der Liegezeit (Stunden)</xs:documentation>
<xs:documentation xml:lang="EN">Planned period of stay (hours)</xs:documentation>
@ -1692,7 +1787,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="DE">Nachricht zur Beantragung einer Visit- bzw. Transit-ID</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MessageHeader" type="tns:MessageHeaderType"/>
<xs:element name="MessageHeader" type="tns:MessageHeaderType" minOccurs="1"/>
<xs:element name="OriginatorsVoyageNumber" type="tns:String_17" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Reisenummer des Meldenden</xs:documentation>
@ -1705,7 +1800,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Local reference number of the reporting party to identify a port call</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ReportingParty" type="tns:ReportingParty"/>
<xs:element name="ReportingParty" type="tns:ReportingParty" minOccurs="1"/>
<xs:element name="REG_VISIT" type="tns:REG_VISIT" minOccurs="0"/>
<xs:element name="REG_TRANSIT" type="tns:REG_TRANSIT" minOccurs="0"/>
</xs:sequence>
@ -1716,7 +1811,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Reset of notifications</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="ResetNotification" type="tns:ResetNotification" maxOccurs="23"/>
<xs:element name="ResetNotification" type="tns:ResetNotification" minOccurs="1" maxOccurs="23"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ResetNotification">
@ -1725,7 +1820,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Cancellation notification</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="NotificationType" type="tns:NotificationType">
<xs:element name="NotificationType" type="tns:NotificationType" minOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Zurückzusetzender Meldeklassentyp</xs:documentation>
<xs:documentation xml:lang="EN">Type of notification for cancellation</xs:documentation>
@ -1763,7 +1858,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
</xs:sequence>
</xs:complexType>
<xs:complexType name="SanitaryMeasuresDetails">
<xs:sequence>
<xs:sequence minOccurs="1" maxOccurs="1">
<xs:element name="SanitaryMeasuresType" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Art</xs:documentation>
@ -1790,7 +1885,7 @@ besteht, dass er ansteckend sein könnte? (j/n)
<xs:documentation xml:lang="EN">Sea security notification</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="SecSimplification" type="xs:boolean" minOccurs="0">
<xs:element name="SecSimplification" type="xs:boolean" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">
Meldungsvereinfachung (true/false) (Es besteht die Möglichkeit einer Meldungsvereinfachung, indem der deutsche Hafen angegeben wird, bei dessen Anlauf die vollständige Information zum Meldetyp abgegeben wurde und sich keine Änderungen der Information beim Anlauf eines nächsten deutschen Hafens ergeben haben.
@ -1901,6 +1996,7 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
</xs:element>
<xs:element name="LastTenPortFacilitiesCalled" type="tns:LastTenPortFacilitiesCalled" minOccurs="0" maxOccurs="10"/>
<xs:element name="ShipToShipActivitiesDuringLastTenPortFacilitiesCalled" type="tns:ShipToShipActivitiesDuringLastTenPortFacilitiesCalled" minOccurs="0" maxOccurs="10"/>
<xs:element name="ShipToShipActivities" type="tns:ShipToShipActivities" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="SERV">
@ -1960,10 +2056,10 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:complexType name="ShipToShipActivitiesDuringLastTenPortFacilitiesCalled">
<xs:complexType name="ShipToShipActivities">
<xs:annotation>
<xs:documentation xml:lang="DE">Auflistung der Schiff/Schiffaktivitäten während des Aufenthalts an den letzten 10 Hafenanlagen</xs:documentation>
<xs:documentation xml:lang="EN">Ship-to-ship activities during last 10 port facilities called</xs:documentation>
<xs:documentation xml:lang="DE">Auflistung der Schiff/Schiffaktivitäten</xs:documentation>
<xs:documentation xml:lang="EN">Ship-to-ship activities</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="LocationName" type="tns:String_255">
@ -1994,7 +2090,69 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:documentation xml:lang="EN">Validation rule if the element "MessageType" is "FULL": Must be specified if no "LocationCode" is present</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DateFrom" type="xs:date" minOccurs="0">
<xs:element name="DateFrom" type="xs:date" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">von (Datum) (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
<xs:documentation xml:lang="EN">Date from (Required, if MessageType = FULL)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DateTo" type="xs:date" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">bis (Datum) (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
<xs:documentation xml:lang="EN">Date to (Required, if MessageType = FULL)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ActivityType" type="tns:String_255" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Art der Aktivität (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
<xs:documentation xml:lang="EN">Type of activity (Required, if MessageType = FULL)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="SecurityMattersToReport" type="tns:String_255" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Weitere sicherheitsrelevante Angaben zur Schiff/Schiffsaktivität</xs:documentation>
<xs:documentation xml:lang="EN">Any security matters to report regarding ship-to-ship activities</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:complexType name="ShipToShipActivitiesDuringLastTenPortFacilitiesCalled">
<xs:annotation>
<xs:documentation xml:lang="DE">Auflistung der Schiff/Schiffaktivitäten während des Aufenthalts an den letzten 10 Hafenanlagen</xs:documentation>
<xs:documentation xml:lang="EN">Ship-to-ship activities during last 10 port facilities called</xs:documentation>
<xs:documentation xml:lang="DE">nur für API 2.1 verwenden</xs:documentation>
<xs:documentation xml:lang="EN">use only for API 2.1</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="LocationName" type="tns:String_255">
<xs:annotation>
<xs:documentation xml:lang="DE">Ort Name</xs:documentation>
<xs:documentation xml:lang="EN">Location name</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LocationCode" type="tns:UNLoCode">
<xs:annotation>
<xs:documentation xml:lang="DE">Ort LoCode</xs:documentation>
<xs:documentation xml:lang="EN">Location LoCode</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LocationCoordinatesLatitude" type="xs:int" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Geo-Breite</xs:documentation>
<xs:documentation xml:lang="EN">Latitude</xs:documentation>
<xs:documentation xml:lang="DE">Validierungsregel wenn im Element "MessageType" der Wert "FULL" steht: Muss angegeben werden, wenn kein LocationCode vorhanden ist</xs:documentation>
<xs:documentation xml:lang="EN">Validation rule if the element "Message Type" is "FULL": Must be specified if no "LocationCode2 is present</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="LocationCoordinatesLongitude" type="xs:int" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Geo-Länge</xs:documentation>
<xs:documentation xml:lang="EN">Longitude</xs:documentation>
<xs:documentation xml:lang="DE">Validierungsregel wenn im Element "MessageType" der Wert "FULL" steht: Muss angegeben werden, wenn kein LocationCode vorhanden ist</xs:documentation>
<xs:documentation xml:lang="EN">Validation rule if the element "MessageType" is "FULL": Must be specified if no "LocationCode" is present</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="DateFrom" type="xs:date" minOccurs="0" maxOccurs="1">
<xs:annotation>
<xs:documentation xml:lang="DE">von (Datum) (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
<xs:documentation xml:lang="EN">Date from (Required, if MessageType = FULL)</xs:documentation>
@ -2087,6 +2245,7 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:documentation xml:lang="EN">Inmarsat call number</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="TransportMode" type="tns:TransportModeType" minOccurs="0"/>
<xs:element name="ShipType" type="tns:SHIP_TYPE" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Schiffstyp (Schiffstyp gemäß UNECE Rec 28) (Pflichtfeld, wenn MessageType = FULL)</xs:documentation>
@ -2096,6 +2255,18 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:element name="ISMCompany" type="tns:ISMCompany" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="StowawaysJoiningLocations">
<xs:sequence>
<xs:element name="StowawaysJoiningLocation" type="tns:String_99">
<xs:annotation>
<xs:documentation xml:lang="DE">Wo gingen sie an Bord (falls bekannt)?</xs:documentation>
<xs:documentation xml:lang="EN">Location stowaways joined ship (if known)</xs:documentation>
<xs:documentation xml:lang="DE">Validierungsregel wenn im Element "MessageType" der Wert "FULL" steht: Falls Einschleicher an Bord gefunden wurden, muss der Ort wo sie an Bord gingen angegeben werden.</xs:documentation>
<xs:documentation xml:lang="EN">Validation rule if the element "MessageType" is "FULL": If stowaways were found on board, the place must be given where they boarded.</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="String_10">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
@ -2132,6 +2303,12 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:maxLength value="255"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String_2_4">
<xs:restriction base="xs:string">
<xs:minLength value="2"/>
<xs:maxLength value="4"/>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="String_30">
<xs:restriction base="xs:string">
<xs:minLength value="1"/>
@ -2256,8 +2433,8 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:sequence>
<xs:element name="DraughtUponArrivalDMT" type="xs:double">
<xs:annotation>
<xs:documentation xml:lang="DE">Tiefgang beim Anlaufen in Dezimeter (&gt;0)</xs:documentation>
<xs:documentation xml:lang="EN">Draught on arrival in decimetre (&gt;0)</xs:documentation>
<xs:documentation xml:lang="DE">Tiefgang beim Anlaufen in Dezimeter (&gt;0) Nachkomma: 1</xs:documentation>
<xs:documentation xml:lang="EN">Draught on arrival in decimetre (&gt;0) decimal: 1</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
@ -2270,8 +2447,8 @@ Hier ist der deutsche Hafen anzugeben, bei dessen Anlauf die vollständige Infor
<xs:sequence>
<xs:element name="draughtUponDepartureDMT" type="xs:double">
<xs:annotation>
<xs:documentation xml:lang="DE">Tiefgang beim Auslaufen in Dezimeter (&gt;0)</xs:documentation>
<xs:documentation xml:lang="EN">Draught on departure in decimetre (&gt;0)</xs:documentation>
<xs:documentation xml:lang="DE">Tiefgang beim Auslaufen in Dezimeter (&gt;0) Nachkomma: 1</xs:documentation>
<xs:documentation xml:lang="EN">Draught on departure in decimetre (&gt;0) decimal: 1</xs:documentation>
</xs:annotation>
</xs:element>
</xs:sequence>
@ -2511,6 +2688,26 @@ Alpha-2 code (two-digits flag code) in accordance with the standard ISO 3166-1)
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:simpleType name="TransportModeType">
<xs:annotation>
<xs:documentation xml:lang="DE">Transportmodus gemäß UNECE Rec19</xs:documentation>
<xs:documentation xml:lang="EN">Transport mode according to UNECE Rec19</xs:documentation>
</xs:annotation>
<xs:restriction base="xs:string">
<xs:enumeration value="1">
<xs:annotation>
<xs:documentation xml:lang="DE">Seeverkehr</xs:documentation>
<xs:documentation xml:lang="EN">Maritime transport</xs:documentation>
</xs:annotation>
</xs:enumeration>
<xs:enumeration value="8">
<xs:annotation>
<xs:documentation xml:lang="DE">Binnenschifffahrt</xs:documentation>
<xs:documentation xml:lang="EN">Inland water transport</xs:documentation>
</xs:annotation>
</xs:enumeration>
</xs:restriction>
</xs:simpleType>
<xs:simpleType name="UNLoCode">
<xs:restriction base="xs:string">
<xs:minLength value="5"/>
@ -2552,8 +2749,8 @@ Alpha-2 code (two-digits flag code) in accordance with the standard ISO 3166-1)
<xs:documentation xml:lang="EN">Message for submitting several notifications of a Visit-/Transit-ID</xs:documentation>
</xs:annotation>
<xs:sequence>
<xs:element name="MessageHeader" type="tns:MessageHeaderType"/>
<xs:element name="MessageType" type="tns:MessageType"/>
<xs:element name="MessageHeader" type="tns:MessageHeaderType" minOccurs="1"/>
<xs:element name="MessageType" type="tns:MessageType" minOccurs="1"/>
<xs:element name="VisitID" type="tns:String_17" minOccurs="0">
<xs:annotation>
<xs:documentation xml:lang="DE">Visit-ID, zu der die Meldeklassen gemeldet werden sollen (nicht anzugeben, wenn Transit-ID vorhanden ist)</xs:documentation>
@ -2626,7 +2823,7 @@ Alpha-2 code (two-digits flag code) in accordance with the standard ISO 3166-1)
<xs:documentation xml:lang="EN">As a container operator enter the vessel operator. Based on the vessel operator, your notifications of voyage can be assigned. If you are ship operator, leave this element away.</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="ReportingParty" type="tns:ReportingParty"/>
<xs:element name="ReportingParty" type="tns:ReportingParty" minOccurs="1"/>
<xs:element name="NOA_NOD" type="tns:NOA_NOD" minOccurs="0"/>
<xs:element name="ATA" type="tns:ATA" minOccurs="0"/>
<xs:element name="ATD" type="tns:ATD" minOccurs="0"/>
@ -2657,6 +2854,7 @@ Alpha-2 code (two-digits flag code) in accordance with the standard ISO 3166-1)
<xs:documentation xml:lang="EN">Registration information Transit-ID (for information only, to apply for a Transit-ID is done by the Request-ID message)</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element name="AGNT" type="tns:AGNT" minOccurs="0"/>
<xs:element name="RESET" type="tns:RESET" minOccurs="0"/>
</xs:sequence>
</xs:complexType>

File diff suppressed because it is too large Load Diff

View File

@ -1148,7 +1148,7 @@ The provided value must not be more than 15 minutes in the future, otherwise Vio
<xs:documentation>Nature of cargo</xs:documentation>
</xs:annotation>
</xs:element>
<xs:element minOccurs="0" name="VolumeOfCargo_TNE" type="DecimalPositive3">
<xs:element minOccurs="0" name="VolumeOfCargo_Cargo_TNE" type="DecimalPositive3">
<xs:annotation>
<xs:documentation>Volume of cargo in tons (TNE)</xs:documentation>
</xs:annotation>
@ -2948,7 +2948,7 @@ The provided value must not be more than 15 minutes in the future, otherwise Vio
<xs:enumeration value="5_GARBAGE-PLASTIC" />
<xs:enumeration value="6_GARBAGE-OTHER" />
<xs:enumeration value="7_SEWAGE" />
<xs:enumeration value="8_CARGO-ASSOSIATED_WASTE" />
<xs:enumeration value="8_CARGO-ASSOCIATED_WASTE" />
<xs:enumeration value="9_CARGO-RESIDUES" />
</xs:restriction>
</xs:simpleType>