diff --git a/build.bat b/build.bat
new file mode 100644
index 00000000..764d4854
--- /dev/null
+++ b/build.bat
@@ -0,0 +1,38 @@
+@echo off
+setlocal
+
+:: Get the directory of the script
+set "PROJECT=%~dp0"
+set "PROJECT=%PROJECT:~0,-1%" :: Remove trailing backslash if any
+
+:: Delete target folder if found
+if exist "%PROJECT%\target" (
+ docker run --rm -i -v "%PROJECT%:/src" alpine:3.6 rm -rf /src/target
+)
+
+:: Structure
+docker run --rm -i -v "%PROJECT%:/src" -v "%PROJECT%\target:/target" difi/vefa-structure:0.6.1
+
+:: Testing validation rules
+docker run --rm -i -v "%PROJECT%:/src" anskaffelser/validator:2.1.0 build -x -t -n eu.peppol.poacc.upgrade.v3 -a rules -target target/validator-test /src
+
+:: Schematron
+for %%s in ("%PROJECT%\rules\sch\*.sch") do (
+ docker run --rm -i -v "%PROJECT%:/src" -v "%PROJECT%\target\schematron:/target" klakegg/schematron prepare /src/rules/sch/%%~nxs /target/%%~nxs
+)
+
+docker run --rm -i -v "%PROJECT%\target\site\files:/src" alpine:3.6 rm -rf /src/PEPPOLBIS-Upgrade-Schematron.zip
+docker run --rm -i -v "%PROJECT%\target\schematron:/src" -v "%PROJECT%\target\site\files:/target" -w /src kramos/alpine-zip -r /target/PEPPOLBIS-Upgrade-Schematron.zip .
+
+:: Example files
+docker run --rm -i -v "%PROJECT%\target\site\files:/src" alpine:3.6 rm -rf /src/PEPPOLBIS-Examples.zip
+docker run --rm -i -v "%PROJECT%\rules\examples:/src" -v "%PROJECT%\target\site\files:/target" -w /src kramos/alpine-zip -r /target/PEPPOLBIS-Examples.zip .
+
+:: Guides
+docker run --rm -i -v "%PROJECT%:/documents" -v "%PROJECT%\target:/target" difi/asciidoctor
+
+:: Fix ownership (Windows doesn't use the same concept of user/group ownership, so this part is usually not necessary)
+:: You can skip this part or just leave it for Unix-like environments using Docker.
+
+endlocal
+pause
diff --git a/guides/release-notes/v3.0.14.adoc b/guides/release-notes/v3.0.14.adoc
index e4c7a92d..39e55c44 100644
--- a/guides/release-notes/v3.0.14.adoc
+++ b/guides/release-notes/v3.0.14.adoc
@@ -5,6 +5,7 @@ Release date:: November 2024
== BIS documentation
* BIS Catalogue
+** Added sample file and use case which describes consignment orders and vendor-managed inventory for Order Only and Ordering BIS.
* BIS Ordering and Order Only
** Added sample file and use case which describes consignment orders and vendor-managed inventory
@@ -18,6 +19,9 @@ Release date:: November 2024
** Optional party Delivery Party added to align with Order.
* Catalogue transaction (T19)
+* Punchout transaction (T77)
+ Add ”cac:DocumentReference” to Certificate.
+ this may contain vital information regarding the label and has a simular function as in Catalogue.
== Changes to code lists and validation artefacts
* Added new codelist with code values SSCC (Serial Shipping Container Code) and ZZZ (Mutually defined) to the optional attribute that indicates the type/scheme for Transport handling unit identifier (in Despatch Advice)
diff --git a/rules/examples/PunchOut_Example.xml b/rules/examples/PunchOut_Example.xml
index e26f065f..5bc2c026 100644
--- a/rules/examples/PunchOut_Example.xml
+++ b/rules/examples/PunchOut_Example.xml
@@ -1,8 +1,8 @@
+ xmlns:cac="urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2"
+ xmlns:cbc="urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2">
urn:fdc:peppol.eu:poacc:trns:punch_out:3
urn:fdc:peppol.eu:poacc:bis:punch_out:3
1387
@@ -84,7 +84,8 @@
12345
- UjBsR09EbGhjZ0dTQUxNQUFBUUNBRU1tQ1p0dU1GUXhEUzhi
+
+ UjBsR09EbGhjZ0dTQUxNQUFBUUNBRU1tQ1p0dU1GUXhEUzhi
@@ -124,6 +125,9 @@
NA
+
+ https://someref/to/123450
+
@@ -166,4 +170,4 @@
-
+
\ No newline at end of file
diff --git a/structure/syntax/ubl-shoppingcart.xml b/structure/syntax/ubl-shoppingcart.xml
index 43894cbf..d14e4d3d 100644
--- a/structure/syntax/ubl-shoppingcart.xml
+++ b/structure/syntax/ubl-shoppingcart.xml
@@ -13,10 +13,12 @@
cbc:CustomizationID
Specification identification
- An identification of the specification containing the total set of rules regarding semantic content, cardinalities and business rules to which the data contained in the instance document conforms.
+ An identification of the specification containing the total set of rules
+ regarding semantic content, cardinalities and business rules to which the data
+ contained in the instance document conforms.
Identifier
tir77-007
-
+
urn:fdc:peppol.eu:poacc:trns:punch_out:3
@@ -24,7 +26,7 @@
cbc:ProfileID
Business process type identifier
Identifies the business process context in which the transaction appears.
- It enables the buyer to process the document in an appropriate way.
+ It enables the buyer to process the document in an appropriate way.
Identifier
tir77-006
@@ -42,9 +44,10 @@
cbc:ActionCode
Complete cart indicator
- Indicate if only a complete shopping cart can be ordered ("true"). That is, that
- the information and prices in the shopping cart is only valid if the complete cart
- is ordered.
+ Indicate if only a complete shopping cart can be ordered ("true"). That is,
+ that
+ the information and prices in the shopping cart is only valid if the complete cart
+ is ordered.
Code
tir77-005
TrueFalse
@@ -75,8 +78,8 @@
cbc:EndDate
Period end date
The date is the last day of the period.Date until which information
- and prices stated in the shopping cart are valid. The date on which the period
- ends.Format= "YYYY-MM-DD"
+ and prices stated in the shopping cart are valid. The date on which the period
+ ends.Format= "YYYY-MM-DD"
Date
tir77-008
2018-05-31
@@ -85,7 +88,7 @@
cbc:EndTime
Period end time
The end time of the period.Date until which information and prices
- stated in the shopping cart are valid.Format ="hh:mm:ss"
+ stated in the shopping cart are valid.Format ="hh:mm:ss"
Time
tir77-009
12:00:00
@@ -98,7 +101,8 @@
cbc:ID
Contract identifier
- A reference that uniquely identifies a contract that relates to this transaction.
+ A reference that uniquely identifies a contract that relates to this
+ transaction.
Document reference
tir77-020
frame123
@@ -111,7 +115,7 @@
cbc:EndpointID
Seller electronic address
Identifies the seller's electronic address to which a business
- document may be delivered.
+ document may be delivered.
Identifier
OP-T77-001
@@ -165,7 +169,7 @@
cbc:EndpointID
Buyer electronic address
Identifies the buyers electronic address to which the business
- document should be delivered.
+ document should be delivered.
Identifier
OP-T77-002
@@ -184,8 +188,8 @@
cbc:ID
Buyer identifier
A identifier for the buyer that is issued by the party that sends
- the document in which the identifier is used.An identifier for the
- buyer.
+ the document in which the identifier is used.An identifier for the
+ buyer.
Identifier
tir77-011
tir77-012
@@ -208,7 +212,8 @@
Buyer name
The full name of the buyer.
Text
- tir77-010Buyer name
+ tir77-010
+ Buyer name
@@ -219,8 +224,10 @@
cbc:ID
Buyer reference identifier
An identifier assigned by the Buyer used for internal routing
- purposes.
- This reference should be placed in the order which may follow after the PunchOut transaction is received by the Buyer(contact ID, department, office id, project code)
+ purposes.
+ This reference should be placed in the order which may follow after the
+ PunchOut transaction is received by the Buyer(contact ID, department, office
+ id, project code)
Identifier
tir77-045
abc234
@@ -234,7 +241,7 @@
cbc:ID
Shopping cart line identifier
An identifier for an individual line that is unique within a shopping
- cart.
+ cart.
Identifier
tir77-015
@@ -243,7 +250,8 @@
cbc:ContractSubdivision
Contracted item indicator
- Reference to the contract when the item is offered in accordance to an existing contract
+ Reference to the contract when the item is offered in accordance to an
+ existing contract
Identifier
tir77-019
ct24342
@@ -251,14 +259,17 @@
cac:LineValidityPeriod
Availability date information
- A shopping cart line may state the item availability date, which is first day before the end of which the particular item
- can and will be shipped from the seller. If availability date is before the cart issue date then the item is immediately available.
- The availability of all items in the cart ends when the validity period of the cart ends.
+ A shopping cart line may state the item availability date, which is
+ first day before the end of which the particular item
+ can and will be shipped from the seller. If availability date is before the cart
+ issue date then the item is immediately available.
+ The availability of all items in the cart ends when the validity period of the
+ cart ends.
cbc:StartDate
Item availability date
The date when the item will be available for
- ordering. Format = "YYYY-MM-DD"
+ ordering. Format = "YYYY-MM-DD"
Date
tir77-027
2018-05-01
@@ -266,7 +277,8 @@
cbc:EndDate
Cart line validity date
- Date until which information and prices stated in the shopping cart line are valid.
+ Date until which information and prices stated in the shopping cart
+ line are valid.
Date
OP-T77-013
2018-05-31
@@ -274,7 +286,8 @@
cbc:EndTime
Cart line validity time
- The time of the end date until which information and prices stated in the shopping cart line are valid.
+ The time of the end date until which information and prices stated
+ in the shopping cart line are valid.
Time
OP-T77-014
23:59:59
@@ -283,12 +296,16 @@
cac:RequiredItemLocationQuantity
Item location quantity information
- Properties of the item in this shopping cart line that are dependent on location and quantity.
+ Properties of the item in this shopping cart line that are dependent on
+ location and quantity.
cbc:LeadTimeMeasure
Shopping cart line delivery lead days
- This is the maximum number of working days that may pass from the day the seller receives an order until the day the item is shipped from the seller. The seller may ship earlier. A lead day of one (1) means that an item will be shipped no later than the
- end of next working day according to the sellers regional calendar.
+ This is the maximum number of working days that may pass from the
+ day the seller receives an order until the day the item is shipped from the
+ seller. The seller may ship earlier. A lead day of one (1) means that an
+ item will be shipped no later than the
+ end of next working day according to the sellers regional calendar.
Text
tir77-016
@@ -309,7 +326,7 @@
cbc:StreetName
Address line 1
The main address line in a postal address usually the street
- name and number.
+ name and number.
Text
OP-T77-007
@@ -317,8 +334,8 @@
cbc:AdditionalStreetName
Address line 2
An additional address line in a postal address that can be
- used to give further details supplementing the main line. Common use are
- secondary house number in a complex or in a building.
+ used to give further details supplementing the main line. Common use are
+ secondary house number in a complex or in a building.
Text
OP-T77-008
@@ -326,7 +343,7 @@
cbc:CityName
City
The common name of the city where the postal address is. The
- name is written in full rather than as a code.
+ name is written in full rather than as a code.
Text
OP-T77-010
@@ -334,8 +351,8 @@
cbc:PostalZone
Post code
The identifier for an addressable group of properties
- according to the relevant national postal service, such as a ZIP code or
- Post Code.
+ according to the relevant national postal service, such as a ZIP code or
+ Post Code.
Text
OP-T77-011
@@ -343,7 +360,7 @@
cbc:CountrySubentity
Country subdivision
For specifying a region, county, state, province etc. within a
- country by using text.
+ country by using text.
Text
OP-T77-012
@@ -353,7 +370,8 @@
cbc:Line
Address line 3
- An additional address line in an address that can be used to give further details supplementing the main line.
+ An additional address line in an address that can be used
+ to give further details supplementing the main line.
Text
OP-T77-009
Gate 34
@@ -367,10 +385,10 @@
cbc:IdentificationCode
Country code
A code that identifies the country.The lists of valid
- countries are registered with the ISO 3166-1 Maintenance agency,
- "Codes for the representation of names of countries and their
- subdivisions". Codes must be according to the alpha-2
- representation.
+ countries are registered with the ISO 3166-1 Maintenance agency,
+ "Codes for the representation of names of countries and their
+ subdivisions". Codes must be according to the alpha-2
+ representation.
Code
tir01-033
ISO3166
@@ -402,7 +420,9 @@
cbc:BaseQuantity
Item price base quantity
- The number of item units to which the price applies. UOM should be stated by using UN/ECE Recommandation 20, including Rec 21 codes - prefixed with X
+ The number of item units to which the price applies. UOM should
+ be stated by using UN/ECE Recommandation 20, including Rec 21 codes -
+ prefixed with X
Quantity
tir77-033
@@ -418,7 +438,8 @@
cbc:PriceType
Price type
- The type of the item price. The type may be given by using codes from UN/CEFACT code list 5387.
+ The type of the item price. The type may be given by using
+ codes from UN/CEFACT code list 5387.
Text
OP-T77-015
@@ -429,7 +450,9 @@
cbc:BatchQuantity
Shopping cart line quantity
- The number of item units requested by the buyer. UOM should be stated by using UN/ECE Recommandation 20, including Rec 21 codes - prefixed with X
+ The number of item units requested by the buyer. UOM should be
+ stated by using UN/ECE Recommandation 20, including Rec 21 codes -
+ prefixed with X
Quantity
tir77-017
@@ -527,7 +550,8 @@
schemeID
Item standard identifier identification scheme identifier
- The identification scheme identifier of the Item standard identifier
+ The identification scheme identifier of the Item standard
+ identifier
ICD
0160
@@ -541,7 +565,7 @@
cbc:ID
Attachment/image identifier
An identifier that can be used to reference the attached
- document, such as an unique identifier.
+ document, such as an unique identifier.
Identifier
tir77-036
OP-T77-003
@@ -550,7 +574,8 @@
cbc:DocumentTypeCode
Attachment/image description code
- A functional description of the attachment/image expressed as code
+ A functional description of the attachment/image expressed as
+ code
Code
UNCL1001
Image
@@ -562,7 +587,7 @@
cbc:DocumentDescription
Attachment descriptionAttached image description
A short description of the attached documentA short
- description of the attached document
+ description of the attached document
Text
tir77-037
OP-T77-004
@@ -575,8 +600,10 @@
cbc:EmbeddedDocumentBinaryObject
Attached document/image
- The attached document embeded as binary object, coded as Base64.
- The binary object has two supplementary components: a Mime Code, which specifies the Mime type of the attachment and a Filename
+ The attached document embeded as binary object, coded as
+ Base64.
+ The binary object has two supplementary components: a Mime Code,
+ which specifies the Mime type of the attachment and a Filename
that is provided by (or on behalf of) the sender of the document
Binary object
tir77-038
@@ -603,7 +630,7 @@
cbc:URI
External item specifications
URI reference to external item information or
- specifications. E.g. web address
+ specifications. E.g. web address
tir77-p003
http://www.test.no/image.jpg
@@ -617,10 +644,10 @@
cbc:IdentificationCode
Item country of origin
A code that identifies the country.The lists of valid
- countries are registered with the ISO 3166-1 Maintenance agency,
- "Codes for the representation of names of countries and their
- subdivisions". Codes must be according to the alpha-2
- representation.
+ countries are registered with the ISO 3166-1 Maintenance agency,
+ "Codes for the representation of names of countries and their
+ subdivisions". Codes must be according to the alpha-2
+ representation.
Code
ISO3166
tir77-029
@@ -633,9 +660,10 @@
cbc:ItemClassificationCode
Item commodity classification
- A code for classifying the item by its type or nature. Classification codes are used to
- allow grouping of similar items for a various purposes e.g. public
- procurement (CPV), e-Commerce (UNSPSC) etc.
+ A code for classifying the item by its type or nature.
+ Classification codes are used to
+ allow grouping of similar items for a various purposes e.g. public
+ procurement (CPV), e-Commerce (UNSPSC) etc.
Code
tir77-028
@@ -643,22 +671,25 @@
listID
Item classification identifier identification scheme identifier
- The identification scheme identifier of the Item classification identifier
+ The identification scheme identifier of the Item
+ classification identifier
UNCL7143
MP
listVersionID
- Item classification identifier version identification scheme identifier
- The identification scheme version identifier of the Item classification identifier
+ Item classification identifier version identification scheme
+ identifier
+ The identification scheme version identifier of the Item
+ classification identifier
20.0602
name
Clear text name equivalent of classification code
The textual equivalent of the code value
- Office furniture
-
+ Office furniture
+
9873242
@@ -668,7 +699,8 @@
cbc:ActionCode
Contracted item indicator
- The code CT indicates that the item is offered in accordance to the referenced contract.
+ The code CT indicates that the item is offered in accordance to
+ the referenced contract.
Code
tir77-019
CT
@@ -683,18 +715,16 @@
The TAX category code for the item.
Code
tir77-034
-
Z
cbc:Percent
Item TAX rate
A TAX rate of zero percent is applied for calculation purposes
- even if the item is outside the scope of TAX. The TAX rate, represented
- as percentage that applies to the item.
+ even if the item is outside the scope of TAX. The TAX rate, represented
+ as percentage that applies to the item.
Percentage
tir77-035
-
0
@@ -703,19 +733,22 @@
cbc:ID
Tax scheme. E.g. “VAT” or “GST”
- tir77-p004
- VAT or GST
+ tir77-p004
+ VAT or GST
cac:AdditionalItemProperty
Additional item property information
- Used to for item properties and also configured product identifier and item is service indicator
+ Used to for item properties and also configured product identifier
+ and item is service indicator
cbc:Name
Item property name
- The name of the property.The name must be sufficiently descriptive to define the value. The definition may be supplemented with the property unit of measure when relevant.
+ The name of the property.The name must be sufficiently
+ descriptive to define the value. The definition may be supplemented with
+ the property unit of measure when relevant.
Text
tir77-018
tir77-026
@@ -727,13 +760,14 @@
cbc:NameCode
Item property code
Code for the item property according to a property code
- system
+ system
Code
tir77-040
listID
Name code list id.
- An identifier for the code list used for the Name code, this is bilaterally agreed.
+ An identifier for the code list used for the Name code,
+ this is bilaterally agreed.
eClass
2397824
@@ -749,7 +783,8 @@
cbc:ValueQuantity
Item property unit of measure
- The unit of measure in which the property value is stated, if relevant. May not be relevant when properties are descriptive.
+ The unit of measure in which the property value is stated, if
+ relevant. May not be relevant when properties are descriptive.
Quantity
tir77-041
@@ -763,12 +798,12 @@
120
- cbc:ValueQualifier
- Property classification
- Standardized and predefined classification of items properties.
- Text
- tir77-p001
-
+ cbc:ValueQualifier
+ Property classification
+ Standardized and predefined classification of items properties.
+ Text
+ tir77-p001
+
cac:ManufacturerParty
@@ -790,7 +825,8 @@
cac:Certificate
Item label information
- Information about the items environmental, social, ethical and quality type of labelling.
+ Information about the items environmental, social, ethical and
+ quality type of labelling.
cbc:ID
Item label name
@@ -803,8 +839,9 @@
cbc:CertificateTypeCode
Certificate type code
- The UBL structure used for item labeling requires this elements,
- use the value NA.
+ The UBL structure used for item labeling requires this
+ elements,
+ use the value NA.
Code
NA
@@ -812,10 +849,9 @@
cbc:CertificateType
Item label type
The label type such environmental, quality, social
- etc.
+ etc.
Text
tir77-031
-
Environmental
@@ -834,8 +870,9 @@
cbc:Name
Issuer name
- The UBL structure used for item labeling requires this elements,
- use the value NA.
+ The UBL structure used for item labeling requires this
+ elements,
+ use the value NA.
Text
tir77-030
@@ -843,8 +880,21 @@
+
+ cac:DocumentReference
+ Label document
+
+ cbc:ID
+ Item label reference
+ A reference to where the label specification can be
+ found, e.g. a URI.
+ Document reference
+ tir77-p005
+ http://www.label.eu/test/
+
+
-
+
\ No newline at end of file