TaxKeysBaseData

Example:
{
  "Message": {
    "SenderId": "ABC Company",
    "ReceiverId": "CargoBytes",
    "ClientId": "XYZ Corp",
    "MessageId": "123456",
    "MessageDate": "2024-02-09T08:00:00Z",
    "MessageFunction": "FunctionABC",
    "Schema": "SchemaXYZ",
    "Namespace": "NamespaceABC",
    "DocType": "InvoiceLogistic"
  },
  "MetaData": [
    {
      "Name": "Meta1",
      "Content": "Content1"
    }
  ],
  "TaxKeys": [
    {
      "Agency": "Airfreight Export",
      "Value": "19V",
      "Description": "19% Vorsteuer",
      "SubType": "Vorsteuer",
      "TreeView": "Tax Keys (Steuerschlüssel)",
      "Percentage": 19.0,
      "Type": "V",
      "ReverseCharge": false
    },
    {
      "Agency": "Airfreight Export",
      "Value": "19U",
      "Description": "19% Umsatzsteuer",
      "SubType": "Umsatzsteuer",
      "TreeView": "Tax Keys (Steuerschlüssel)",
      "Percentage": 19.0,
      "Type": "U",
      "ReverseCharge": false
    }
  ]
}

Java classes (draft)

import java.util.List;

public class TaxKeysBaseData {
    private DocThorMessage Message;
    private List<DocThorMetaDataItem> MetaData;
    private List<TaxKeysBaseDataItem> TaxKeys;

    // Getters and setters
    public DocThorMessage getMessage() {
        return Message;
    }

    public void setMessage(DocThorMessage message) {
        Message = message;
    }

    public List<DocThorMetaDataItem> getMetaData() {
        return MetaData;
    }

    public void setMetaData(List<DocThorMetaDataItem> metaData) {
        MetaData = metaData;
    }

    public List<TaxKeysBaseDataItem> getTaxKeys() {
        return TaxKeys;
    }

    public void setTaxKeys(List<TaxKeysBaseDataItem> taxKeys) {
        TaxKeys = taxKeys;
    }
}

class DocThorMessage {
    private String SenderId;
    private String ReceiverId;
    private String ClientId;
    private String MessageId;
    private String MessageDate;
    private String MessageFunction;
    private String Schema;
    private String Namespace;
    private String DocType;

    // Getters and setters
    public String getSenderId() {
        return SenderId;
    }

    public void setSenderId(String senderId) {
        SenderId = senderId;
    }

    public String getReceiverId() {
        return ReceiverId;
    }

    public void setReceiverId(String receiverId) {
        ReceiverId = receiverId;
    }

    public String getClientId() {
        return ClientId;
    }

    public void setClientId(String clientId) {
        ClientId = clientId;
    }

    public String getMessageId() {
        return MessageId;
    }

    public void setMessageId(String messageId) {
        MessageId = messageId;
    }

    public String getMessageDate() {
        return MessageDate;
    }

    public void setMessageDate(String messageDate) {
        MessageDate = messageDate;
    }

    public String getMessageFunction() {
        return MessageFunction;
    }

    public void setMessageFunction(String messageFunction) {
        MessageFunction = messageFunction;
    }

    public String getSchema() {
        return Schema;
    }

    public void setSchema(String schema) {
        Schema = schema;
    }

    public String getNamespace() {
        return Namespace;
    }

    public void setNamespace(String namespace) {
        Namespace = namespace;
    }

    public String getDocType() {
        return DocType;
    }

    public void setDocType(String docType) {
        DocType = docType;
    }
}

class DocThorMetaDataItem {
    private String Name;
    private String Content;

    // Getters and setters
    public String getName() {
        return Name;
    }

    public void setName(String name) {
        Name = name;
    }

    public String getContent() {
        return Content;
    }

    public void setContent(String content) {
        Content = content;
    }
}

class TaxKeysBaseDataItem {
    private String Agency;
    private String Description;
    private String SubType;
    private String TreeView;
    private double Percentage;
    private String Type;
    private boolean ReverseCharge;

    // Getters and setters
    public String getAgency() {
        return Agency;
    }

    public void setAgency(String agency) {
        Agency = agency;
    }

    public String getDescription() {
        return Description;
    }

    public void setDescription(String description) {
        Description = description;
    }

    public String getSubType() {
        return SubType;
    }

    public void setSubType(String subType) {
        SubType = subType;
    }

    public String getTreeView() {
        return TreeView;
    }

    public void setTreeView(String treeView) {
        TreeView = treeView;
    }

    public double getPercentage() {
        return Percentage;
    }

    public void setPercentage(double percentage) {
        Percentage = percentage;
    }

    public String getType() {
        return Type;
    }

    public void setType(String type) {
        Type = type;
    }

    public boolean isReverseCharge() {
        return ReverseCharge;
    }

    public void setReverseCharge(boolean reverseCharge) {
        ReverseCharge = reverseCharge;
    }
}

Java example for above mentioned class (draft)

import com.fasterxml.jackson.databind.ObjectMapper;

import java.io.IOException;
import java.util.ArrayList;
import java.util.List;

public class Main {
    public static void main(String[] args) throws IOException {
        // Creating message
        DocThorMessage message = new DocThorMessage();
        message.setSenderId("ABC Company");
        message.setReceiverId("CargoBytes");
        message.setClientId("XYZ Corp");
        message.setMessageId("123456");
        message.setMessageDate("2024-02-09T08:00:00Z");
        message.setMessageFunction("FunctionABC");
        message.setSchema("SchemaXYZ");
        message.setNamespace("NamespaceABC");
        message.setDocType("InvoiceLogistic");

        // Creating meta data
        DocThorMetaDataItem metaDataItem = new DocThorMetaDataItem();
        metaDataItem.setName("Meta1");
        metaDataItem.setContent("Content1");
        List<DocThorMetaDataItem> metaData = new ArrayList<>();
        metaData.add(metaDataItem);

        // Creating tax keys
        TaxKeysBaseDataItem taxKey1 = new TaxKeysBaseDataItem();
        taxKey1.setAgency("Airfreight Export");
        taxKey1.setDescription("19% Vorsteuer");
        taxKey1.setSubType("Vorsteuer");
        taxKey1.setTreeView("Tax Keys (Steuerschlüssel)");
        taxKey1.setPercentage(19.0);
        taxKey1.setType("V");
        taxKey1.setReverseCharge(false);

        TaxKeysBaseDataItem taxKey2 = new TaxKeysBaseDataItem();
        taxKey2.setAgency("Airfreight Export");
        taxKey2.setDescription("19% Umsatzsteuer");
        taxKey2.setSubType("Umsatzsteuer");
        taxKey2.setTreeView("Tax Keys (Steuerschlüssel)");
        taxKey2.setPercentage(19.0);
        taxKey2.setType("U");
        taxKey2.setReverseCharge(false);

        List<TaxKeysBaseDataItem> taxKeys = new ArrayList<>();
        taxKeys.add(taxKey1);
        taxKeys.add(taxKey2);

        // Creating TaxKeysBaseData
        TaxKeysBaseData taxKeysBaseData = new TaxKeysBaseData();
        taxKeysBaseData.setMessage(message);
        taxKeysBaseData.setMetaData(metaData);
        taxKeysBaseData.setTaxKeys(taxKeys);

        // Converting to JSON
        ObjectMapper mapper = new ObjectMapper();
        String json = mapper.writeValueAsString(taxKeysBaseData);
        System.out.println(json);
    }
}

Python classes (draft)

class TaxKeysBaseData:
    def __init__(self):
        self.Message = DocThorMessage()
        self.MetaData = []
        self.TaxKeys = []


class DocThorMessage:
    def __init__(self):
        self.SenderId = None
        self.ReceiverId = None
        self.ClientId = None
        self.MessageId = None
        self.MessageDate = None
        self.MessageFunction = None
        self.Schema = None
        self.Namespace = None
        self.DocType = None


class DocThorMetaDataItem:
    def __init__(self):
        self.Name = None
        self.Content = None


class TaxKeysBaseDataItem:
    def __init__(self):
        self.Agency = None
        self.Description = None
        self.SubType = None
        self.TreeView = None
        self.Percentage = None
        self.Type = None
        self.ReverseCharge = None

        

Python example

import json

# Create TaxKeysBaseData instance
tax_keys_data = TaxKeysBaseData()

# Fill in the data
tax_keys_data.Message.SenderId = "ABC Company"
tax_keys_data.Message.ReceiverId = "CargoBytes"
tax_keys_data.Message.ClientId = "XYZ Corp"
tax_keys_data.Message.MessageId = "123456"
tax_keys_data.Message.MessageDate = "2024-02-09T08:00:00Z"
tax_keys_data.Message.MessageFunction = "FunctionABC"
tax_keys_data.Message.Schema = "SchemaXYZ"
tax_keys_data.Message.Namespace = "NamespaceABC"
tax_keys_data.Message.DocType = "InvoiceLogistic"

# Add MetaData item
meta_data_item = DocThorMetaDataItem()
meta_data_item.Name = "Meta1"
meta_data_item.Content = "Content1"
tax_keys_data.MetaData.append(meta_data_item)

# Add TaxKeys items
tax_keys_item1 = TaxKeysBaseDataItem()
tax_keys_item1.Agency = "Airfreight Export"
tax_keys_item1.Description = "19% Vorsteuer"
tax_keys_item1.SubType = "Vorsteuer"
tax_keys_item1.TreeView = "Tax Keys (Steuerschlüssel)"
tax_keys_item1.Percentage = 19.0
tax_keys_item1.Type = "V"
tax_keys_item1.ReverseCharge = False

tax_keys_item2 = TaxKeysBaseDataItem()
tax_keys_item2.Agency = "Airfreight Export"
tax_keys_item2.Description = "19% Umsatzsteuer"
tax_keys_item2.SubType = "Umsatzsteuer"
tax_keys_item2.TreeView = "Tax Keys (Steuerschlüssel)"
tax_keys_item2.Percentage = 19.0
tax_keys_item2.Type = "U"
tax_keys_item2.ReverseCharge = False

tax_keys_data.TaxKeys.extend([tax_keys_item1, tax_keys_item2])

# Convert to JSON
json_data = json.dumps(tax_keys_data.__dict__, indent=4)
print(json_data)

Javascript classes (draft)

class TaxKeysBaseData {
    constructor() {
        this.Message = new DocThorMessage();
        this.MetaData = [];
        this.TaxKeys = [];
    }
}

class DocThorMessage {
    constructor() {
        this.SenderId = null;
        this.ReceiverId = null;
        this.ClientId = null;
        this.MessageId = null;
        this.MessageDate = null;
        this.MessageFunction = null;
        this.Schema = null;
        this.Namespace = null;
        this.DocType = null;
    }
}

class DocThorMetaDataItem {
    constructor() {
        this.Name = null;
        this.Content = null;
    }
}

class TaxKeysBaseDataItem {
    constructor() {
        this.Agency = null;
        this.Description = null;
        this.SubType = null;
        this.TreeView = null;
        this.Percentage = null;
        this.Type = null;
        this.ReverseCharge = null;
    }
}

Javascript example

// Create TaxKeysBaseData instance
const taxKeysData = new TaxKeysBaseData();

// Fill in the data
taxKeysData.Message.SenderId = "ABC Company";
taxKeysData.Message.ReceiverId = "CargoBytes";
taxKeysData.Message.ClientId = "XYZ Corp";
taxKeysData.Message.MessageId = "123456";
taxKeysData.Message.MessageDate = "2024-02-09T08:00:00Z";
taxKeysData.Message.MessageFunction = "FunctionABC";
taxKeysData.Message.Schema = "SchemaXYZ";
taxKeysData.Message.Namespace = "NamespaceABC";
taxKeysData.Message.DocType = "InvoiceLogistic";

// Add MetaData item
const metaDataItem = new DocThorMetaDataItem();
metaDataItem.Name = "Meta1";
metaDataItem.Content = "Content1";
taxKeysData.MetaData.push(metaDataItem);

// Add TaxKeys items
const taxKeysItem1 = new TaxKeysBaseDataItem();
taxKeysItem1.Agency = "Airfreight Export";
taxKeysItem1.Description = "19% Vorsteuer";
taxKeysItem1.SubType = "Vorsteuer";
taxKeysItem1.TreeView = "Tax Keys (Steuerschlüssel)";
taxKeysItem1.Percentage = 19.0;
taxKeysItem1.Type = "V";
taxKeysItem1.ReverseCharge = false;

const taxKeysItem2 = new TaxKeysBaseDataItem();
taxKeysItem2.Agency = "Airfreight Export";
taxKeysItem2.Description = "19% Umsatzsteuer";
taxKeysItem2.SubType = "Umsatzsteuer";
taxKeysItem2.TreeView = "Tax Keys (Steuerschlüssel)";
taxKeysItem2.Percentage = 19.0;
taxKeysItem2.Type = "U";
taxKeysItem2.ReverseCharge = false;

taxKeysData.TaxKeys.push(taxKeysItem1, taxKeysItem2);

// Convert to JSON
const jsonData = JSON.stringify(taxKeysData, null, 2);
console.log(jsonData);

C# classes with async and sync cile functions and serialization and deserialization functions (Draft)

using DocthorBaseData;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DocthorBaseData
{

    public class TaxKeysBaseData
    {
        public DocThorMessage Message { get; set; }
        public List<DocThorMetaDataItem> MetaData { get; set; }
        public List<TaxKeysBaseDataItem> TaxKeys { get; set; }
    }

    public class TaxKeysBaseDataItem
    {
        public string Agency { get; set; }
        public string Value { get; set; }
        public string Description { get; set; }
        public string SubType { get; set; }
        public string TreeView { get; set; }
        public decimal? Percentage { get; set; }
        public string Type { get; set; }
        public bool? ReverseCharge { get; set; }
        public string Value4 { get; set; }
        public string Value5 { get; set; }
        public string Value6 { get; set; }
        public string Value7 { get; set; }
        public string Value8 { get; set; }
        public string Value9 { get; set; }
        public string Value10 { get; set; }
        public string Value11 { get; set; }
        public string Value12 { get; set; }
        public string Value13 { get; set; }
        public string Value14 { get; set; }
        public string Value15 { get; set; }
        public string Value16 { get; set; }
        public string Value17 { get; set; }
        public string Value18 { get; set; }
        public string Value19 { get; set; }
    }
}

c# Example

TaxKeysBaseData taxKeysData = new TaxKeysBaseData
{
    Message = new DocThorMessage
    {
        SenderId = "ABC Company",
        ReceiverId = "CargoBytes",
        ClientId = "XYZ Corp",
        MessageId = "123456",
        MessageDate = "2024-02-09T08:00:00Z",
        MessageFunction = "FunctionABC",
        Schema = "SchemaXYZ",
        Namespace = "NamespaceABC",
        DocType = "InvoiceLogistic"
    },
    MetaData = new List<DocThorMetaDataItem>
    {
        new DocThorMetaDataItem
        {
            Name = "Meta1",
            Content = "Content1"
        }
    },
    TaxKeys = new List<TaxKeysBaseDataItem>
    {
        new TaxKeysBaseDataItem
        {
            Agency = "Airfreight Export",
            Value = "19V",
            Description = "19% Vorsteuer",
            SubType = "Vorsteuer",
            TreeView = "Tax Keys (Steuerschlüssel)",
            Percentage = 19.0m,
            Type = "V",
            ReverseCharge = false
        },
        new TaxKeysBaseDataItem
        {
            Agency = "Airfreight Export",
            Value = "19U",
            Description = "19% Umsatzsteuer",
            SubType = "Umsatzsteuer",
            TreeView = "Tax Keys (Steuerschlüssel)",
            Percentage = 19.0m,
            Type = "U",
            ReverseCharge = false
        }
    }
};

string json = JsonConvert.SerializeObject(taxKeysData, Formatting.Indented);
Console.WriteLine(json);
Scroll to Top