com.helger.ubl21.UBL21Validator Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of ph-ubl21 Show documentation
Show all versions of ph-ubl21 Show documentation
Library for reading and writing UBL 2.1 documents
/**
* Copyright (C) 2014-2019 Philip Helger (www.helger.com)
* philip[at]helger[dot]com
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package com.helger.ubl21;
import javax.annotation.Nonnull;
import javax.annotation.concurrent.NotThreadSafe;
import com.helger.commons.annotation.PresentForCodeCoverage;
import oasis.names.specification.ubl.schema.xsd.applicationresponse_21.ApplicationResponseType;
import oasis.names.specification.ubl.schema.xsd.attacheddocument_21.AttachedDocumentType;
import oasis.names.specification.ubl.schema.xsd.awardednotification_21.AwardedNotificationType;
import oasis.names.specification.ubl.schema.xsd.billoflading_21.BillOfLadingType;
import oasis.names.specification.ubl.schema.xsd.callfortenders_21.CallForTendersType;
import oasis.names.specification.ubl.schema.xsd.catalogue_21.CatalogueType;
import oasis.names.specification.ubl.schema.xsd.cataloguedeletion_21.CatalogueDeletionType;
import oasis.names.specification.ubl.schema.xsd.catalogueitemspecificationupdate_21.CatalogueItemSpecificationUpdateType;
import oasis.names.specification.ubl.schema.xsd.cataloguepricingupdate_21.CataloguePricingUpdateType;
import oasis.names.specification.ubl.schema.xsd.cataloguerequest_21.CatalogueRequestType;
import oasis.names.specification.ubl.schema.xsd.certificateoforigin_21.CertificateOfOriginType;
import oasis.names.specification.ubl.schema.xsd.contractawardnotice_21.ContractAwardNoticeType;
import oasis.names.specification.ubl.schema.xsd.contractnotice_21.ContractNoticeType;
import oasis.names.specification.ubl.schema.xsd.creditnote_21.CreditNoteType;
import oasis.names.specification.ubl.schema.xsd.debitnote_21.DebitNoteType;
import oasis.names.specification.ubl.schema.xsd.despatchadvice_21.DespatchAdviceType;
import oasis.names.specification.ubl.schema.xsd.documentstatus_21.DocumentStatusType;
import oasis.names.specification.ubl.schema.xsd.documentstatusrequest_21.DocumentStatusRequestType;
import oasis.names.specification.ubl.schema.xsd.exceptioncriteria_21.ExceptionCriteriaType;
import oasis.names.specification.ubl.schema.xsd.exceptionnotification_21.ExceptionNotificationType;
import oasis.names.specification.ubl.schema.xsd.forecast_21.ForecastType;
import oasis.names.specification.ubl.schema.xsd.forecastrevision_21.ForecastRevisionType;
import oasis.names.specification.ubl.schema.xsd.forwardinginstructions_21.ForwardingInstructionsType;
import oasis.names.specification.ubl.schema.xsd.freightinvoice_21.FreightInvoiceType;
import oasis.names.specification.ubl.schema.xsd.fulfilmentcancellation_21.FulfilmentCancellationType;
import oasis.names.specification.ubl.schema.xsd.goodsitemitinerary_21.GoodsItemItineraryType;
import oasis.names.specification.ubl.schema.xsd.guaranteecertificate_21.GuaranteeCertificateType;
import oasis.names.specification.ubl.schema.xsd.instructionforreturns_21.InstructionForReturnsType;
import oasis.names.specification.ubl.schema.xsd.inventoryreport_21.InventoryReportType;
import oasis.names.specification.ubl.schema.xsd.invoice_21.InvoiceType;
import oasis.names.specification.ubl.schema.xsd.iteminformationrequest_21.ItemInformationRequestType;
import oasis.names.specification.ubl.schema.xsd.order_21.OrderType;
import oasis.names.specification.ubl.schema.xsd.ordercancellation_21.OrderCancellationType;
import oasis.names.specification.ubl.schema.xsd.orderchange_21.OrderChangeType;
import oasis.names.specification.ubl.schema.xsd.orderresponse_21.OrderResponseType;
import oasis.names.specification.ubl.schema.xsd.orderresponsesimple_21.OrderResponseSimpleType;
import oasis.names.specification.ubl.schema.xsd.packinglist_21.PackingListType;
import oasis.names.specification.ubl.schema.xsd.priorinformationnotice_21.PriorInformationNoticeType;
import oasis.names.specification.ubl.schema.xsd.productactivity_21.ProductActivityType;
import oasis.names.specification.ubl.schema.xsd.quotation_21.QuotationType;
import oasis.names.specification.ubl.schema.xsd.receiptadvice_21.ReceiptAdviceType;
import oasis.names.specification.ubl.schema.xsd.reminder_21.ReminderType;
import oasis.names.specification.ubl.schema.xsd.remittanceadvice_21.RemittanceAdviceType;
import oasis.names.specification.ubl.schema.xsd.requestforquotation_21.RequestForQuotationType;
import oasis.names.specification.ubl.schema.xsd.retailevent_21.RetailEventType;
import oasis.names.specification.ubl.schema.xsd.selfbilledcreditnote_21.SelfBilledCreditNoteType;
import oasis.names.specification.ubl.schema.xsd.selfbilledinvoice_21.SelfBilledInvoiceType;
import oasis.names.specification.ubl.schema.xsd.statement_21.StatementType;
import oasis.names.specification.ubl.schema.xsd.stockavailabilityreport_21.StockAvailabilityReportType;
import oasis.names.specification.ubl.schema.xsd.tender_21.TenderType;
import oasis.names.specification.ubl.schema.xsd.tendererqualification_21.TendererQualificationType;
import oasis.names.specification.ubl.schema.xsd.tendererqualificationresponse_21.TendererQualificationResponseType;
import oasis.names.specification.ubl.schema.xsd.tenderreceipt_21.TenderReceiptType;
import oasis.names.specification.ubl.schema.xsd.tradeitemlocationprofile_21.TradeItemLocationProfileType;
import oasis.names.specification.ubl.schema.xsd.transportationstatus_21.TransportationStatusType;
import oasis.names.specification.ubl.schema.xsd.transportationstatusrequest_21.TransportationStatusRequestType;
import oasis.names.specification.ubl.schema.xsd.transportexecutionplan_21.TransportExecutionPlanType;
import oasis.names.specification.ubl.schema.xsd.transportexecutionplanrequest_21.TransportExecutionPlanRequestType;
import oasis.names.specification.ubl.schema.xsd.transportprogressstatus_21.TransportProgressStatusType;
import oasis.names.specification.ubl.schema.xsd.transportprogressstatusrequest_21.TransportProgressStatusRequestType;
import oasis.names.specification.ubl.schema.xsd.transportservicedescription_21.TransportServiceDescriptionType;
import oasis.names.specification.ubl.schema.xsd.transportservicedescriptionrequest_21.TransportServiceDescriptionRequestType;
import oasis.names.specification.ubl.schema.xsd.unawardednotification_21.UnawardedNotificationType;
import oasis.names.specification.ubl.schema.xsd.utilitystatement_21.UtilityStatementType;
import oasis.names.specification.ubl.schema.xsd.waybill_21.WaybillType;
/**
* Validate all UBL 2.1 document types.
*
* @author Philip Helger
*/
@NotThreadSafe
public final class UBL21Validator
{
@PresentForCodeCoverage
private static final UBL21Validator s_aInstance = new UBL21Validator ();
private UBL21Validator () {}
/** Create a validation builder for ApplicationResponse.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder applicationResponse(){return UBL21ValidatorBuilder.create(ApplicationResponseType.class);}
/** Create a validation builder for AttachedDocument.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder attachedDocument(){return UBL21ValidatorBuilder.create(AttachedDocumentType.class);}
/** Create a validation builder for AwardedNotification.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder awardedNotification(){return UBL21ValidatorBuilder.create(AwardedNotificationType.class);}
/** Create a validation builder for BillOfLading.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder billOfLading(){return UBL21ValidatorBuilder.create(BillOfLadingType.class);}
/** Create a validation builder for CallForTenders.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder callForTenders(){return UBL21ValidatorBuilder.create(CallForTendersType.class);}
/** Create a validation builder for Catalogue.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder catalogue(){return UBL21ValidatorBuilder.create(CatalogueType.class);}
/** Create a validation builder for CatalogueDeletion.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder catalogueDeletion(){return UBL21ValidatorBuilder.create(CatalogueDeletionType.class);}
/** Create a validation builder for CatalogueItemSpecificationUpdate.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder catalogueItemSpecificationUpdate(){return UBL21ValidatorBuilder.create(CatalogueItemSpecificationUpdateType.class);}
/** Create a validation builder for CataloguePricingUpdate.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder cataloguePricingUpdate(){return UBL21ValidatorBuilder.create(CataloguePricingUpdateType.class);}
/** Create a validation builder for CatalogueRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder catalogueRequest(){return UBL21ValidatorBuilder.create(CatalogueRequestType.class);}
/** Create a validation builder for CertificateOfOrigin.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder certificateOfOrigin(){return UBL21ValidatorBuilder.create(CertificateOfOriginType.class);}
/** Create a validation builder for ContractAwardNotice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder contractAwardNotice(){return UBL21ValidatorBuilder.create(ContractAwardNoticeType.class);}
/** Create a validation builder for ContractNotice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder contractNotice(){return UBL21ValidatorBuilder.create(ContractNoticeType.class);}
/** Create a validation builder for CreditNote.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder creditNote(){return UBL21ValidatorBuilder.create(CreditNoteType.class);}
/** Create a validation builder for DebitNote.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder debitNote(){return UBL21ValidatorBuilder.create(DebitNoteType.class);}
/** Create a validation builder for DespatchAdvice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder despatchAdvice(){return UBL21ValidatorBuilder.create(DespatchAdviceType.class);}
/** Create a validation builder for DocumentStatus.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder documentStatus(){return UBL21ValidatorBuilder.create(DocumentStatusType.class);}
/** Create a validation builder for DocumentStatusRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder documentStatusRequest(){return UBL21ValidatorBuilder.create(DocumentStatusRequestType.class);}
/** Create a validation builder for ExceptionCriteria.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder exceptionCriteria(){return UBL21ValidatorBuilder.create(ExceptionCriteriaType.class);}
/** Create a validation builder for ExceptionNotification.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder exceptionNotification(){return UBL21ValidatorBuilder.create(ExceptionNotificationType.class);}
/** Create a validation builder for Forecast.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder forecast(){return UBL21ValidatorBuilder.create(ForecastType.class);}
/** Create a validation builder for ForecastRevision.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder forecastRevision(){return UBL21ValidatorBuilder.create(ForecastRevisionType.class);}
/** Create a validation builder for ForwardingInstructions.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder forwardingInstructions(){return UBL21ValidatorBuilder.create(ForwardingInstructionsType.class);}
/** Create a validation builder for FreightInvoice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder freightInvoice(){return UBL21ValidatorBuilder.create(FreightInvoiceType.class);}
/** Create a validation builder for FulfilmentCancellation.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder fulfilmentCancellation(){return UBL21ValidatorBuilder.create(FulfilmentCancellationType.class);}
/** Create a validation builder for GoodsItemItinerary.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder goodsItemItinerary(){return UBL21ValidatorBuilder.create(GoodsItemItineraryType.class);}
/** Create a validation builder for GuaranteeCertificate.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder guaranteeCertificate(){return UBL21ValidatorBuilder.create(GuaranteeCertificateType.class);}
/** Create a validation builder for InstructionForReturns.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder instructionForReturns(){return UBL21ValidatorBuilder.create(InstructionForReturnsType.class);}
/** Create a validation builder for InventoryReport.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder inventoryReport(){return UBL21ValidatorBuilder.create(InventoryReportType.class);}
/** Create a validation builder for Invoice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder invoice(){return UBL21ValidatorBuilder.create(InvoiceType.class);}
/** Create a validation builder for ItemInformationRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder itemInformationRequest(){return UBL21ValidatorBuilder.create(ItemInformationRequestType.class);}
/** Create a validation builder for Order.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder order(){return UBL21ValidatorBuilder.create(OrderType.class);}
/** Create a validation builder for OrderCancellation.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder orderCancellation(){return UBL21ValidatorBuilder.create(OrderCancellationType.class);}
/** Create a validation builder for OrderChange.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder orderChange(){return UBL21ValidatorBuilder.create(OrderChangeType.class);}
/** Create a validation builder for OrderResponse.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder orderResponse(){return UBL21ValidatorBuilder.create(OrderResponseType.class);}
/** Create a validation builder for OrderResponseSimple.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder orderResponseSimple(){return UBL21ValidatorBuilder.create(OrderResponseSimpleType.class);}
/** Create a validation builder for PackingList.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder packingList(){return UBL21ValidatorBuilder.create(PackingListType.class);}
/** Create a validation builder for PriorInformationNotice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder priorInformationNotice(){return UBL21ValidatorBuilder.create(PriorInformationNoticeType.class);}
/** Create a validation builder for ProductActivity.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder productActivity(){return UBL21ValidatorBuilder.create(ProductActivityType.class);}
/** Create a validation builder for Quotation.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder quotation(){return UBL21ValidatorBuilder.create(QuotationType.class);}
/** Create a validation builder for ReceiptAdvice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder receiptAdvice(){return UBL21ValidatorBuilder.create(ReceiptAdviceType.class);}
/** Create a validation builder for Reminder.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder reminder(){return UBL21ValidatorBuilder.create(ReminderType.class);}
/** Create a validation builder for RemittanceAdvice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder remittanceAdvice(){return UBL21ValidatorBuilder.create(RemittanceAdviceType.class);}
/** Create a validation builder for RequestForQuotation.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder requestForQuotation(){return UBL21ValidatorBuilder.create(RequestForQuotationType.class);}
/** Create a validation builder for RetailEvent.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder retailEvent(){return UBL21ValidatorBuilder.create(RetailEventType.class);}
/** Create a validation builder for SelfBilledCreditNote.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder selfBilledCreditNote(){return UBL21ValidatorBuilder.create(SelfBilledCreditNoteType.class);}
/** Create a validation builder for SelfBilledInvoice.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder selfBilledInvoice(){return UBL21ValidatorBuilder.create(SelfBilledInvoiceType.class);}
/** Create a validation builder for Statement.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder statement(){return UBL21ValidatorBuilder.create(StatementType.class);}
/** Create a validation builder for StockAvailabilityReport.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder stockAvailabilityReport(){return UBL21ValidatorBuilder.create(StockAvailabilityReportType.class);}
/** Create a validation builder for Tender.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder tender(){return UBL21ValidatorBuilder.create(TenderType.class);}
/** Create a validation builder for TendererQualification.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder tendererQualification(){return UBL21ValidatorBuilder.create(TendererQualificationType.class);}
/** Create a validation builder for TendererQualificationResponse.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder tendererQualificationResponse(){return UBL21ValidatorBuilder.create(TendererQualificationResponseType.class);}
/** Create a validation builder for TenderReceipt.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder tenderReceipt(){return UBL21ValidatorBuilder.create(TenderReceiptType.class);}
/** Create a validation builder for TradeItemLocationProfile.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder tradeItemLocationProfile(){return UBL21ValidatorBuilder.create(TradeItemLocationProfileType.class);}
/** Create a validation builder for TransportationStatus.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportationStatus(){return UBL21ValidatorBuilder.create(TransportationStatusType.class);}
/** Create a validation builder for TransportationStatusRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportationStatusRequest(){return UBL21ValidatorBuilder.create(TransportationStatusRequestType.class);}
/** Create a validation builder for TransportExecutionPlan.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportExecutionPlan(){return UBL21ValidatorBuilder.create(TransportExecutionPlanType.class);}
/** Create a validation builder for TransportExecutionPlanRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportExecutionPlanRequest(){return UBL21ValidatorBuilder.create(TransportExecutionPlanRequestType.class);}
/** Create a validation builder for TransportProgressStatus.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportProgressStatus(){return UBL21ValidatorBuilder.create(TransportProgressStatusType.class);}
/** Create a validation builder for TransportProgressStatusRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportProgressStatusRequest(){return UBL21ValidatorBuilder.create(TransportProgressStatusRequestType.class);}
/** Create a validation builder for TransportServiceDescription.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportServiceDescription(){return UBL21ValidatorBuilder.create(TransportServiceDescriptionType.class);}
/** Create a validation builder for TransportServiceDescriptionRequest.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder transportServiceDescriptionRequest(){return UBL21ValidatorBuilder.create(TransportServiceDescriptionRequestType.class);}
/** Create a validation builder for UnawardedNotification.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder unawardedNotification(){return UBL21ValidatorBuilder.create(UnawardedNotificationType.class);}
/** Create a validation builder for UtilityStatement.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder utilityStatement(){return UBL21ValidatorBuilder.create(UtilityStatementType.class);}
/** Create a validation builder for Waybill.
@return The builder and never null
*/
@Nonnull public static UBL21ValidatorBuilder waybill(){return UBL21ValidatorBuilder.create(WaybillType.class);}
}