The SIMPLE ontology network is a network of ontologies that mimics the structure of the ontology network created in the context of the FEDeRATED project with the objective of facilitating the representation of information related to logistic processes. This ontology network consists of 6 ontologies: Business Service, Event, Logistic Roles, Digital Twin, Physical Infrastructures and Classifications. The following Spanish organisations are involved in the SIMPLE project: Puertos del Estado (PdE), ADIF and Ministerio de Transporte, Movilidad y Agenda Urbana (MITMA). This work is done in relation to contract number 008/20.
La red de ontologías SIMPLE se estructura de la misma manera que la red de ontologías propuesta en el proyecto FEDeRATED, para la representación de información relacionada con procesos logísticos. Esta red de ontologías consiste en 6 ontologías: servicios de negocio, eventos, roles logísticos, gemelo digital, infraestructuras físicas y clasificaciones. En el proyecto SIMPLE están involucradas las siguientes organizaciones: Puertos del Estado (PdE), ADIF y Ministerio de Transporte, Movilidad y Agenda Urbana (MITMA), en relación con el expediente 008/20.
The SIMPLE ontology network mimics the structure of the ontology network created in the context of the FEDeRATED project, with the objective of facilitating the representation of information related to logistic processes. This ontology network consists of 6 ontologies:
The main design decisions for the whole ontology network (main classes and how they are interrelated, event model, transactions, etc.) can be found as part of the documentation of the project FEDeRATED, and the ontology network is maintained in a GitHub repository, where issues may be submitted to request changes. In SIMPLE, we have only decided to extend those classes or properties that could not be found in that ontology network and that were needed according to the needs of the main stakeholders.
Esta ontología es parte de la red de ontologías SIMPLE, que siguen la estructura de la red de ontologías creada en el contexto del proyecto FEDeRATED, con el objetivo de permitir la representación de información relacionada con los procesos logísticos. Ambas redes de ontologías consisten en 6 ontologías:
Las principales decisiones de diseño de la red de ontologías (clases principales y cómo se interrelacionan entre sí, modelo de eventos, transacciones, etc.) pueden encontrarse en la documentación del proyecto FEDeRATED, y la red de ontologías se mantiene en un repositorio en GitHub, donde se pueden solicitar cambios. En SIMPLE, se ha decidido extender únicamente aquellas clases y propiedades que no se encontraban en dicha red de ontologías y que eran necesarias teniendo en cuenta las peticiones de los principales actores de SIMPLE.
dc | <http://purl.org/dc/elements/1.1/> |
owl | <http://www.w3.org/2002/07/owl#> |
rdf | <http://www.w3.org/1999/02/22-rdf-syntax-ns#> |
rdfs | <http://www.w3.org/2000/01/rdf-schema#> |
xsd | <http://www.w3.org/2001/XMLSchema#> |
skos | <http://www.w3.org/2004/02/skos/core#> |
schema | <https://schema.org/> |
bs | <https://ontology.tno.nl/logistics/federated/BusinessService#> |
cl | <https://ontology.tno.nl/logistics/federated/Classifications#> |
dt | <https://ontology.tno.nl/logistics/federated/DigitalTwin#> |
ev | <https://ontology.tno.nl/logistics/federated/Event#> |
lr | <https://ontology.tno.nl/logistics/federated/LogisticRoles#> |
pi | <https://ontology.tno.nl/logistics/federated/PhysicalInfrastructure#> |
simple-cl | <https://vocab.plataformasimple.es/def/logistics/federated/Classifications#> |
simple-dt | <https://vocab.plataformasimple.es/def/logistics/federated/DigitalTwin#> |
simple-ev | <https://vocab.plataformasimple.es/def/logistics/federated/Event#> |
simple-lr | <https://vocab.plataformasimple.es/def/logistics/federated/LogisticRoles#> |
simple-pi | <https://vocab.plataformasimple.es/def/logistics/federated/PhysicalInfrastructure#> |
The following prefixes are used to refer to the different ontologies that are part of SIMPLE and FEDeRATED.
De manera general, se utilizan los siguientes prefijos (que están siendo usados de manera generalizada para todos los modelos semánticos) para hacer referencia a las distintas ontologías que forman parte de las redes de ontologías SIMPLE y FEDeRATED.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
@prefix dct: <http://purl.org/dc/terms/> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix owl: <http://www.w3.org/2002/07/owl#> .
@prefix dt: <http://ontology.tno.nl/logistics/federated/DigitalTwin#> .
@prefix cl: <http://ontology.tno.nl/logistics/federated/Classifications#> .
@prefix ev: <http://ontology.tno.nl/logistics/federated/Event#> .
@prefix pi: <http://ontology.tno.nl/logistics/federated/PhysicalInfrastructure#> .
@prefix bs: <http://ontology.tno.nl/logistics/federated/BusinessService#> .
@prefix lr: <http://ontology.tno.nl/logistics/federated/LogisticRoles#> .
@prefix example: <http://datos.plataformasimple.es/recurso/example/> .
@prefix simple-dt: <http://vocab.plataformasimple.es/def/logistics/federated/DigitalTwin#> .
@prefix simple-cl: <http://vocab.plataformasimple.es/def/logistics/federated/Classifications#> .
@prefix simple-ev: <http://vocab.plataformasimple.es/def/logistics/federated/Event#> .
@prefix simple-pi: <http://vocab.plataformasimple.es/def/logistics/federated/PhysicalInfrastructure#> .
@prefix simple-bs: <http://vocab.plataformasimple.es/def/logistics/federated/BusinessService#> .
@prefix simple-lr: <http://vocab.plataformasimple.es/def/logistics/federated/LogisticRoles#> .
@prefix simple-kos: <http://https://vocab.plataformasimple.es/kos> .
Figure 1 shows a general overview of some of the main classes in the ontology network, together with their interrelationships. In this document we will describe some of them in more detail.
La figura 1 muestra una visión general de la red de ontologías, incluyendo las principales clases y sus interrelaciones. En este documento se irán describiendo las más relevantes con mayor nivel de detalle.
One of the main concepts in the Business Service ontology is that of Business Transactions, where we can find two relevant classes defined in the FEDeRATED Business Service ontology, such as Shipment and Consignment. A Consignment corresponds to a specific movement of some goods from one place to another, while a Shipment may contain several of these movements (Consignments). Both of them have the following attributes:
En la ontología de servicios de negocios se puede destacar el concepto Business Transacion (transacción de negocios). Dos de sus subclases tienen especial relevancia: Shipment y Consignment. La clase Consignment modela cada uno de los traslados individuales que se producen en un envío, mientras que la clase Shipment engloba a todos los Consignments relacionados con un mismo envío. Ambas clases tienen los siguientes atributos:
The entity LogisticsService models any service provided to a client by a logistics/transport service provider. It has the following properties:
La entidad LogisticsService modela cualquier servicio prestado a un cliente por un proveedor de servicios de logística o transporte y cuenta con las siguientes propiedades:
Next we show the diagram of these entities and properties:
A continuación se muestra el diagrama con las entidades y propiedades explicadas:
Un Evento se define como la asociación o interacción entre dos o más Gemelos Digitales y/o Servicios de Negocio, que comienzan y terminan con unos hitos con sus correspondientes fechas y/u horas de inicio y fin, siendo sus atributos esenciales hito, fecha y hora.
Un Evento representa acciones, hitos, transacciones o cualquier otra actividad del mundo real. Existen diferentes tipologías de Eventos y se estructuran en base a los siguientes grupos de Eventos: Servicios Logísticos, Transacciones Comerciales, Incidencias y Acuerdos Contractuales.
Las propiedades de un Evento de cualquier tipo son:
example:Event_generic a event:Event ;
dct:identifier “Event_generic” ;
event:hasDateTimeType event:Actual ; # It could be also Estimated, Expected, Planned
event:hasMilestone event:start ; # It could be also end
event:hasTimeStamp “xxxxxxx”^^xsd:dateTime;
event:involvesBusinessTransaction example:XXX;
event:involvesDigitalTwin example:XXX;
event:involvesLogisticsActor example:XXX;
event:involvesPhysicalInfrastructure example:XXX;
simpledt:relatedDocumentation example:XXX.
En el siguiente diagrama se muestran el diagrama de eventos:
Además de eventos también se disponen de entidades que modelan las distintas personas legales. Los distintos roles que pueden desarrillar los diferentes actores que pueden estar involucrados en los Eventos de SIMPLE, de acuerdo con las normativas vigentes de transporte, son:
La representación de cada uno de los actores previamente citados está formada por las siguientes propiedades:
Un ejemplo en RDF sería el siguiente:
example:Sender a logisticsRoles:Sender ;
businessService:actorAddress "43 Halton Rd, Carterton";
businessService:actorID "Sender_1";
businessService:actorName "Sender_1";
businessService:actorWebsite "www.example.sender.com";
businessService:bookingNumber "+44 000 00 00";
A continuación se muestra un diagrama con la información mencionada:
En este caso de uso, se representa el envío de unos neumáticos por parte de la empresa Michelín hacia la empresa PSA. Para ello, Michelín utiliza los servicios logísticos de Gefco para el transporte de dichas mercancías.
example:Shipment13 a bs:Shipment ; #Tramo global que puede contener a uno o muchos subtramos.
bs:createdBy "Michelin";
bs:consigmentCreationTime "Michelin";
bs:consigmentUpdateTime "XX";
bs:contractCarriageConditions "XX";
bs:involvedConsignor example:Michelin ;
bs:involvedConsignee example:PSA ;
bs:involvedForwarder example:GEFCO ;
bs:TransportPlanIssuanceTime "2022-02-16T16:00:00Z" ;
bs:involvedEvent ex:Event ;
bs:partOfTransportMovementType classifications:BreakBulk ;
simple-bs:hasLocationOrigin example:MichelinWarehouse ;
simple-bs:hasLocationDestination example:PSAFactory ;
simple-bs:expectedDeliveryTime "2022-04-28T21:32:52"^^xsd:dateTime ;
simple-bs:containsBusinessTransaction example:Consigment12 ;
simple-bs:containsBusinessTransaction example:Consigment23 .
example:Consigment12 a bs:Consigment ;
simple-bs:hasLocationOrigin example:MichelinWarehouse ;
simple-bs:hasLocationDestination example:GefcoStorage1 ;
simple-bs:expectedDeliveryTime "2022-04-16T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService12 ; #Servicio logístico
bs:involvedConsignor example:Michelin ;
bs:involvedConsignee example:GEFCO ;
bs:involvedCarrier example:Carreras ;
example:Consigment23 a bs:Consigment ;
simple-bs:hasLocationOrigin example:GefcoStorage1 ;
simple-bs:hasLocationDestination example:PSAFactory ;
simple-bs:expectedDeliveryTime "2022-04-23T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService23 ;
bs:involvedConsignor example:GEFCO ;
bs:involvedConsignee example:PSA ;
bs:involvedCarrier example:FINSA ;
example:LogisticService12 a bs:TransportService ;
bs:serviceName "Servicio de transporte de Michelin a Gefco" ;
bs:hasDepartureLocation example:MichelinWarehouse ;
bs:hasArrivalLocation example:GefcoStorage1 ;
bs:hasLogisticsServiceProvider example:Carreras ;
bs:usedPackage example:Package13 ;
bs:useGoods example:Neumaticos1 ;
bs:transportMeans example:Truck1 .
bs:usedtransportEquipment example:Trailer13 ;
simple-bs:involveDriver example:Driver1 ;
example:LogisticService23 a bs:TransportService ;
bs:serviceName "Servicio de transporte de Gefco a PSA" ;
bs:hasDepartureLocation example:GefcoStorage1 ;
bs:hasArrivalLocation example:PSAFactory ;
bs:hasLogisticsServiceProvider example:FINSA ;
bs:usedPackage example:Package13 ;
bs:useGoods example:Neumaticos1 ;
bs:transportMeans example:Truck2 .
bs:usedtransportEquipment example:Trailer23 ;
simple-bs:involveDriver example:Driver2 ;
example:Event1 a event:DepartureEvent ;
event:hasDateTimeType classifications:planned ;
event:hasSubmissionTimeStamp "2022-02-16T05:00:00:00Z"^^xsd:dateTime ;
event:hasTimeStamp "2022-02-16T04:50:00:00Z"^^xsd:dateTime ;
event:hasMilestone event:start ;
event:involvesBusinessTransaction example:Shipment13 ;
simple-event:LogisticsService example:LogisticService12 ;
event:involvesDigitalTwin example:Truck1;
event:involvesDigitalTwin example:Trailer1;
event:involvesPhysicalInfraestructure example:MichelinWarehouse ;
example:Event2 a event:DepartureEvent ;
event:hasDateTimeType classifications:actual ;
event:hasSubmissionTimeStamp "2022-02-16T19:32:11:00Z"^^xsd:dateTime ;
event:hasTimeStamp "2022-02-16T18:58:31:00Z"^^xsd:dateTime ;
event:hasMilestone event:end ;
event:involvesBusinessTransaction example:Shipment13 ;
simple-event:LogisticsService example:LogisticService12 ;
event:involvesDigitalTwin example:Truck1;
event:involvesDigitalTwin example:Trailer1;
event:involvesPhysicalInfraestructure example:MichelinWarehouse ;
example:Event3 a event:ArrivalEvent ;
event:hasDateTimeType classifications:planned ;
event:hasSubmissionTimeStamp "2022-02-23T01:10:00:00Z"^^xsd:dateTime ;
event:hasTimeStamp "2022-02-23T00:50:00:00Z"^^xsd:dateTime ;
event:hasMilestone event:estimated ;
event:involvesBusinessTransaction example:Shipment13 ;
simple-event:LogisticsService example:LogisticService23 ;
event:involvesDigitalTwin example:Truck2;
event:involvesDigitalTwin example:Trailer2;
event:involvesPhysicalInfraestructure example:GefcoStorage1 ;
example:Event4 a event:ArrivalEvent ;
event:hasDateTimeType classifications:actual ;
event:hasSubmissionTimeStamp "2022-02-23T23:00:50:00Z"^^xsd:dateTime ;
event:hasTimeStamp "2022-02-23T22:50:00:00Z"^^xsd:dateTime ;
event:hasMilestone event:end ;
event:involvesBusinessTransaction example:Shipment13 ;
simple-event:LogisticsService example:LogisticService23 ;
event:involvesDigitalTwin example:Truck2;
event:involvesDigitalTwin example:Trailer2;
event:involvesPhysicalInfraestructure example:GefcoStorage1 ;
# Package Neumaticos de michelín
example:Package13 a dt:Package ;
dct:identifier "M_2022_100" ;
classifications:packageCode "100" ;
dt:hasUNNumber simple-kos:XXX ;
dt:numberOfPackages "2"^^xsd:integer ;
dt:packageLevelType "XXXXXX" . # No examples yet
example:Neumaticos1 a dt:Goods ;
dt:goodsDescription "200 neumáticos en dos pallets" ;
dt:goodsWeight "200"^^xsd:integer ;
dt:grossMass "250"^^xsd:integer ;
dt:goodsTypeCode simple-kos:neumaticos ;
dt:damageRemarks "sin daños" .
# Entidades involucradas en este ejemplo
example:Michelin a bs:LegalEntity .
example:PSA a bs:LegalEntity .
example:GEFCO a bs:LegalEntity .
example:Carreras a bs:LegalEntity .
example:FINSA a bs:LegalEntity .
example:MichelinWarehouse a dt:PhysicalObject .
example:GefcoStorage1 a dt:PhysicalObject .
example:PSAFactory a dt:PhysicalObject .
example:Trailer1 a dt:Trailer ;
dt:TrailerLicensePlate "0000 ABC" .
example:Truck1 a dt:Truck ;
dt:TrailerLicensePlate "00001 ABC" .
example:Driver1 a simple-bs:Driver ;
bs:logisticsRoleName "Juan Palomo" ;
bs:logisticsRoleID "000000001" .
example:Driver2 a simple-bs:Driver ;
bs:logisticsRoleName "Rafael Alonso" ;
bs:logisticsRoleID "000000002" .
simple-bs:Driver rdfs:subclassOf bs:LogisticsServiceProvider .
En este ejemplo se describe una instanciación del modelo semántico de FEDeRATED, combinado con algunas especializaciones añadidas en la red de ontologías SIMPLE, para un conjunto de envíos que combinan transporte por carretera con transporte por ferrocarril.
El ejemplo considera, por un lado, el envío de un contenedor con neumáticos desde un almacén de la empresa Neumaticos_AA a la fábrica de vehículos Vehiculos_AA, utilizando en primer lugar un camión de la empresa TransportesCarretera_AA y a continuación transporte por ferrocarril, así como el envío de un contenedor con piezas metálicas desde el almacén de la empresa PiezasMetalicas_AA a la misma fábrica de vehículos Vehiculos_AA, utilizando también una combinación de transporte en camión de la empresa TransportesCarretera_BB y ferrocarril. Ambos envíos, en el tramo realizado por el ferrocarril, se encuentran en el mismo tren, formado por dos vagones.
Se debe considerar que este es un ejemplo simplificado del tipo de información que se generará y almacenará, puesto que se puede esperar que el número de vagones de un tren siempre será mucho mayor. El objetivo de este ejemplo es ilustrar los distintos aspectos que deben ser considerados en este contexto.
Se consideran dos transacciones de negocio de alto nivel en el contexto de este ejemplo:
A continuación se incluye el código RDF correspondiente a estas dos transacciones de negocios, que no suponen aún ninguna operación logística. Ambas transacciones de negocio comparten algunos aspectos como el destino final de la mercancía o la fecha esperada de entrega (aunque podría no ser el caso, pero se considera así pues llegarán en el mismo tren y se puede considerar que en el momento de acordar la transacción de negocio se ha acordado este punto).
example:Shipment1 a bs:Shipment ;
bs:createdBy "Neumaticos AA";
bs:consigmentCreationTime "XX";
bs:consigmentUpdateTime "XX";
bs:contractCarriageConditions "XX";
bs:involvedConsignor example:Neumaticos_AA ;
bs:involvedConsignee example:Vehiculos_AA ;
bs:involvedForwarder example:EmpresaGestionTransporte_AA ;
bs:TransportPlanIssuanceTime "2022-02-16T16:00:00Z" ;
bs:involvedEvent ex:Event ;
bs:partOfTransportMovementType classifications:BreakBulk ;
simple-bs:hasLocationOrigin example:AlmacenNeumaticos_AA ;
simple-bs:hasLocationDestination example:FabricaVehiculos_AA ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
simple-bs:containsBusinessTransaction example:Consignment1_1 ;
simple-bs:containsBusinessTransaction example:Consignment1_3 ;
simple-bs:containsBusinessTransaction example:CargoHandlingOrder1_2 .
example:Shipment2 a bs:Shipment ;
bs:createdBy "Piezas Metalicas AA";
bs:consigmentCreationTime "XX";
bs:consigmentUpdateTime "XX";
bs:contractCarriageConditions "XX";
bs:involvedConsignor example:PiezasMetalicas_AA ;
bs:involvedConsignee example:Vehiculos_AA ;
bs:involvedForwarder example:EmpresaGestionTransporte_BB ;
bs:TransportPlanIssuanceTime "2022-02-15T12:00:00Z" ;
bs:involvedEvent ex:Event ;
bs:partOfTransportMovementType classifications:BreakBulk ;
simple-bs:hasLocationOrigin example:AlmacenPiezasMetalicas_AA ;
simple-bs:hasLocationDestination example:FabricaVehiculos_AA ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
simple-bs:containsBusinessTransaction example:Consignment2_1 ;
simple-bs:containsBusinessTransaction example:CargoHandlingOrder2_2 ;
simple-bs:containsBusinessTransaction example:Consignment2_3 .
Asimismo, cada una de estas dos transacciones de negocio se convierte en varias transacciones de negocio más específicas, correspondientes al envío por carretera por una empresa de transportes, el tratamiento del contenedor en la terminal de carga y el envío por ferrocarril hasta el punto de destino:
A continuación se incluye el código RDF correspondiente a estas seis transacciones de negocios:
example:Consignment1_1 a bs:Consigment ;
simple-bs:hasLocationOrigin example:AlmacenNeumaticos_AA ;
simple-bs:hasLocationDestination example:Terminal_AA ;
simple-bs:expectedDeliveryTime "2022-04-16T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService1_1 ;
bs:involvedConsignor example:Neumaticos_AA ;
bs:involvedConsignee example:EmpresaCargoHandling_AA ;
bs:involvedCarrier example:TransportesCarretera_AA ;
simple-dt:relatedDocumentation example:CMR1_1 ;
bs:involvedEvent example:Event1_1_1,example:Event1_1_2,example:Event1_1_3,example:Event1_1_4 .
example:Consignment2_1 a bs:Consigment ;
simple-bs:hasLocationOrigin example:AlmacenPiezasMetalicas_AA ;
simple-bs:hasLocationDestination example:Terminal_AA ;
simple-bs:expectedDeliveryTime "2022-04-16T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService2_1 ;
bs:involvedConsignor example:PiezasMetalicas_AA ;
bs:involvedConsignee example:EmpresaCargoHandling_AA ;
bs:involvedCarrier example:TransportesCarretera_BB ;
simple-dt:relatedDocumentation example:CMR2_1 ;
bs:involvedEvent example:Event2_1_1,example:Event2_1_2,example:Event2_1_3,example:Event2_1_4 .
example:CargoHandlingOrder1_2 a simple-bs:CargoHandlingOrder ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService1_2 ;
bs:involvedShuntingYard example:EmpresaCargoHandling_AA ;
bs:involvedEvent example:Event1_2_1,example:Event1_2_2,example:Event1_2_3,example:Event1_2_4 .
example:CargoHandlingOrder2_2 a simple-bs:CargoHandlingOrder ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService2_2 ;
bs:involvedShuntingYard example:EmpresaCargoHandling_AA ;
bs:involvedEvent example:Event2_2_1,example:Event2_2_2,example:Event2_2_3,example:Event2_2_4 .
example:Consignment1_3 a bs:Consigment ;
simple-bs:hasLocationOrigin example:Terminal_AA ;
simple-bs:hasLocationDestination example:FabricaVehiculos_AA ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService1_3 ;
bs:involvedConsignor example:TransportesFerroviarios_AA ;
bs:involvedConsignee example:Vehiculos_AA ;
bs:involvedCarrier example:TransportesFerroviarios_AA ;
bs:involvedEvent example:Event1_3_1,example:Event1_3_2 .
example:Consignment2_3 a bs:Consigment ;
simple-bs:hasLocationOrigin example:Terminal_AA ;
simple-bs:hasLocationDestination example:FabricaVehiculos_AA ;
simple-bs:expectedDeliveryTime "2022-04-18T21:32:52"^^xsd:dateTime ;
bs:hasService ex:LogisticService2_3 ;
bs:involvedConsignor example:TransportesFerroviarios_AA ;
bs:involvedConsignee example:Vehiculos_AA ;
bs:involvedCarrier example:TransportesFerroviarios_AA ;
bs:involvedEvent example:Event1_3_1,example:Event1_3_2 .
En los ejemplos anteriores han aparecido un gran número de entidades (empresas), lugares y documentos cuyos datos deberán estar disponibles en el modelo semántico, y que son reutilizados en todo momento cuando estas entidades están involucradas en alguna transacción. De manera simplificada, se incluye información de todas ellas, que podrá ser completada con más detalles (datos de contacto, datos fiscales, etc.)
example:Neumaticos_AA a bs:LegalEntity .
example:PiezasMetalicas_AA a bs:LegalEntity .
example:Vehiculos_AA a bs:LegalEntity .
example:EmpresaGestionTransporte_AA a bs:LegalEntity .
example:EmpresaGestionTransporte_BB a bs:LegalEntity .
example:TransportesCarretera_AA a dt:LegalEntity .
example:TransportesCarretera_BB a dt:LegalEntity .
example:ShuntingYard_AA a dt:LegalEntity .
example:AlmacenNeumaticos_AA a dt:Location .
example:AlmacenPiezasMetalicas_AA a dt:Location .
example:Terminal_AA a dt:Location .
example:FabricaVehiculos_AA a dt:Location .
example:CMR1_1 a simple-dt:CMR .
example:CMR2_1 a simple-dt:CMR .
Cada una de las seis transacciones de negocios específicas que han sido detalladas en la sección anterior se relaciona con un servicio logístico. En cuatro de los casos se trata de un servicio logístico de transporte y en dos de los casos se trata de un servicio logístico de tratamiento de carga.
example:LogisticService1_1 a bs:TransportService ;
bs:serviceName "Servicio de transporte de almacén de neumáticos AA a terminal de carga AA por parte de la empresa Transportes Carretera AA" ;
bs:hasDepartureLocation example:AlmacenNeumaticos_AA ;
bs:hasArrivalLocation example:Terminal_AA ;
bs:hasLogisticsServiceProvider example:XXX ;
bs:useGoods example:neumaticos1 ;
bs:usedPackage example:package1 ;
bs:usedtransportEquipment example:Trailer1 ;
bs:involvedCarrier example:TransportesCarretera_AA ;
simple-bs:involveDriver example:Driver1 ;
bs:transportMeans example:Truck1 .
example:LogisticService1_2 a simple-bs:CargoHandlingService ;
bs:serviceName "Servicio de tratamiento de la carga en la Terminal AA, donde se descarga del transportista por carretera y se colocará en un vagón de un tren" ;
bs:hasLocation example:Terminal_AA ;
bs:useGoods example:neumaticos1 ;
bs:usedPackage example:package1 ;
bs:involvedOperator example:EmpresaCargoHandling_AA .
example:LogisticService2_1 a bs:TransportService ;
bs:serviceName "Servicio de transporte de almacén de piezas metálicas AA a terminal de carga AA por parte de la empresa Transportes Carretera BB" ;
bs:hasDepartureLocation example:AlmacenPiezasMetalicas_AA ;
bs:hasArrivalLocation example:Terminal_AA ;
bs:hasLogisticsServiceProvider example:XXX ;
bs:useGoods example:piezasmetalicas1 ;
bs:usedPackage example:package2 ;
bs:usedtransportEquipment example:Trailer2 ;
bs:involvedCarrier example:TransportesCarretera_BB ;
simple-bs:involveDriver example:Driver2 ;
bs:transportMeans example:Truck2 .
example:LogisticService2_2 a simple-bs:CargoHandlingService ;
bs:serviceName "Servicio de tratamiento de la carga en la Terminal AA, donde se descarga del transportista por carretera y se colocará en un vagón de un tren" ;
bs:hasLocation example:Terminal_AA ;
bs:useGoods example:piezasmetalicas1 ;
bs:usedPackage example:package2 ;
bs:involvedOperator example:EmpresaCargoHandling_AA .
example:LogisticService1_3 a bs:TransportService ;
bs:serviceName "Servicio de transporte de terminal de carga Terminal AA a fábrica de vehículos AA por parte de la empresa Transportes Ferrioviarios AA" ;
bs:hasDepartureLocation example:Terminal_AA ;
bs:hasArrivalLocation example:FabricaVehiculos_AA ;
bs:hasLogisticsServiceProvider example:XXX ;
bs:useGoods example:neumaticos1 ;
bs:usedPackage example:package1 ;
bs:usedtransportEquipment example:RailwayWagon1 ;
bs:usedtransportEquipment example:Container1 ;
bs:involvedCarrier example:TransportesFerroviarios_AA ;
bs:transportMeans example:Train1 .
example:LogisticService2_3 a bs:TransportService ;
bs:serviceName "Servicio de transporte de terminal de carga Terminal AA a fábrica de vehículos AA por parte de la empresa Transportes Ferrioviarios AA" ;
bs:hasDepartureLocation example:Terminal_AA ;
bs:hasArrivalLocation example:FabricaVehiculos_AA ;
bs:hasLogisticsServiceProvider example:XXX ;
bs:useGoods example:piezasmetalicas1 ;
bs:usedPackage example:package2 ;
bs:usedtransportEquipment example:RailwayWagon2 ;
bs:usedtransportEquipment example:Container2 ;
bs:involvedCarrier example:TransportesFerroviarios_AA ;
bs:transportMeans example:Train1 .
En los ejemplos anteriores han aparecido varias entidades de tipo equipamiento (trailers, vagones de tren, contenedores) o medio de transporte (camiones, trenes) como parte de los servicios logísticos. También han aparecido las mercancías específicas (neumaticos1, piezasmetalicas1) y los paquetes en las que están embaladas y son enviadas (package1, package2) De manera simplificada, se incluye información de todas ellas, que podrá ser completada con más detalles (números de matrículas, identificadores específicos, etc.)
#Equipamiento
example:Trailer1 a dt:Trailer ;
dt:TrailerLicensePlate "0001 ABC" .
example:Trailer2 a dt:Trailer ;
dt:TrailerLicensePlate "0002 ABC" .
example:Truck1 a dt:Truck ;
dt:truckLicensePlate "00001 ABC" .
example:Truck2 a dt:Truck ;
dt:truckLicensePlate "00002 ABC" .
example:Container1 a dt:Container .
example:Container2 a dt:Container .
#Medios de transporte
example:RailwayWagon1 a dt:RailwayWagon .
example:RailwayWagon2 a dt:RailwayWagon .
example:Train1 a dt:Train .
#Mercancías
example:neumaticos1 a dt:Goods ;
dt:goodsDescription "20 neumáticos de tipo XX" ;
dt:goodsWeight "200"^^xsd:integer ;
dt:grossMass "250"^^xsd:integer ;
dt:goodsTypeCode simple-cl:neumaticos ;
dt:damageRemarks "sin daños" .
example:piezasmetalicas1 a dt:Goods ;
dt:goodsDescription "50 piezas metálicas para carrocería de coche" ;
dt:goodsWeight "200"^^xsd:integer ;
dt:grossMass "250"^^xsd:integer ;
dt:goodsTypeCode simple-cl:piezasmetalicas ;
dt:damageRemarks "sin daños" .
#Embalajes
example:package1 a dt:Package ;
dct:identifier "M_2022_100" ;
cl:packageCode "XXX" ;
dt:hasUNNumber simple-kos:XXX ;
dt:numberOfPackages "2"^^xsd:integer ;
dt:packageLevelType "XXXXXX" .
dt:packageLevelName "XXXXXX" .
dt:packageTypeNumericCode "XXXXXX" .
example:package2 a dt:Package ;
dct:identifier "M_2022_200" ;
cl:packageCode "XXX" ;
dt:hasUNNumber simple-kos:XXX ;
dt:numberOfPackages "2"^^xsd:integer ;
dt:packageLevelType "XXXXXX" .
dt:packageLevelName "XXXXXX" .
dt:packageTypeNumericCode "XXXXXX" .
En general, se generarán un gran número de eventos en el contexto de las operaciones logísticas que se producen en este contexto, incluyendo los eventos de salida y llegada, donde en primera instancia se generan los de la planificación de salida y llegada y posteriormente los de salida y llegada reales. También hay eventos de carga y descarga de mercancía, y de generación del pie de tren.
El primer conjunto de eventos que se presenta a continuación tiene que ver con la salida planificada (17 de abril de 2022 a las 16:00:00 registrado el 16 de febrero de 2022) y real (17 de abril de 2022 a las 16:10:00 registrado ese mismo día a las 16:15) de las mercancías del almacén de neumáticos AlmacenNeumaticos_AA. Es posible que en algunas situaciones el primer event (salida planificada) no se registre.
example:Event1_1_1 a ev:DepartureEvent ;
ev:hasDateTimeType cl:planned ;
ev:hasSubmissionTimeStamp "2022-02-16T16:00:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-02-17T16:00:00Z"^^xsd:dateTime ;
ev:hasMilestone ev:start ;
ev:involvesBusinessTransaction example:Consignment1_1 ;
ev:involves example:LogisticService1_1 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesDigitalTwin example:Trailer1;
ev:involvesPhysicalInfraestructure example:AlmacenNeumaticos_AA .
example:Event1_1_2 a ev:DepartureEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-02-17T16:15:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-02-17T16:10:00Z"^^xsd:dateTime ;
ev:hasMilestone ev:start ;
ev:involvesBusinessTransaction example:Consignment1_1 ;
ev:involves example:LogisticService1_1 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesDigitalTwin example:Trailer1;
ev:involvesPhysicalInfraestructure example:AlmacenNeumaticos_AA .
A continuación el conjunto de eventos de llegada (planificado y real) a la terminal de carga. Es importante destacar que podría haber varios eventos de llegada esperada durante el transcurso del transporte, si el camión correspondiente va actualizando su llegada esperada en varias ocasiones durante el trayecto. Por simplicidad, sólo se considerará un evento de llegada planificado nada más salir del almacén y un evento de llegada real al llegar a la terminal de carga ferroviaria. También es posible que en algunas situaciones no se registre el evento de llegada estimado (Event1_1_3).
example:Event1_1_3 a ev:ArrivalEvent ;
ev:hasDateTimeType cl:estimated ;
ev:hasSubmissionTimeStamp "2022-02-17T16:15:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T20:00:00Z"^^xsd:dateTime ;
ev:hasMilestone ev:start ;
ev:involvesBusinessTransaction example:Consignment1_1 ;
ev:involves example:LogisticService1_1 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesDigitalTwin example:Trailer1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
example:Event1_1_4 a ev:ArrivalEvent, simple-ev:GateInEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-17T19:55:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T19:50:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:Consignment1_1 ;
ev:involves example:LogisticService1_1 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesDigitalTwin example:Trailer1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
Los eventos involucrados en el Consignment2_1 (el otro camión que lleva piezas metálicas) serán similares.
Una vez que los camiones han llegado a la terminal ferroviaria, se realizará el proceso de admisión de carga (y descarga de los camiones), así como la carga en vagones, que formarán finalmente lo que se conoce como pie de tren, listo para realizar su salida. Asimismo, el camión saldrá de la terminal.
example:Event1_2_1a ev:DischargeEvent ; # It may also be DropOffEvent
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-17T20:35:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T20:30:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:CargoHandlingOrder1_2 ;
ev:involves example:LogisticService1_2 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesDigitalTwin example:Trailer1;
ev:involvesDigitalTwin example:Container1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
example:Event1_2_3 a ev:LoadEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-17T22:35:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T22:30:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:CargoHandlingOrder1_2 ;
ev:involves example:LogisticService1_2 ;
ev:involvesDigitalTwin example:Container1;
ev:involvesDigitalTwin example:RailwayWagon1;
ev:involvesDigitalTwin example:Train1; # If already known
ev:involvesPhysicalInfraestructure example:Terminal_AA .
example:Event1_2_2 a simple-ev:GateOutEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-17T20:45:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T20:40:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:CargoHandlingOrder1_2 ;
ev:involves example:LogisticService1_2 ;
ev:involvesDigitalTwin example:Truck1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
# Este puede ser que ya no se necesite.
example:Event1_2_2 a simple-ev:GateOutEvent ; # Evento relacionado con la generación del pie de tren, involucrando los dos contenedores y vagones
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-17T23:35:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-17T22:30:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:CargoHandlingOrder1_2 ;
ev:involves example:LogisticService1_2 ;
ev:involvesDigitalTwin example:Container1;
ev:involvesDigitalTwin example:RailwayWagon1;
ev:involvesDigitalTwin example:Container2;
ev:involvesDigitalTwin example:RailwayWagon2;
ev:involvesDigitalTwin example:Train1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
Una vez que el pie de tren se monta, está listo para realizar su salida y llegar a destino.
example:Event1_3_1 a ev:DepartureEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-18T04:00:00Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-18T04:00:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:Consignment1_3, example:Consignment2_3 ;
ev:involves example:LogisticService1_3, ;example:LogisticService2_3 ;
ev:involvesDigitalTwin example:Container1;
ev:involvesDigitalTwin example:RailwayWagon1;
ev:involvesDigitalTwin example:Container2;
ev:involvesDigitalTwin example:RailwayWagon2;
ev:involvesDigitalTwin example:Train1;
ev:involvesPhysicalInfraestructure example:Terminal_AA .
example:Event1_3_2 a ev:ArrivalEvent ;
ev:hasDateTimeType cl:actual ;
ev:hasSubmissionTimeStamp "2022-04-18T22:00:52Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-04-18T22:00:01Z"^^xsd:dateTime ;
ev:hasMilestone ev:end ;
ev:involvesBusinessTransaction example:Consignment1_3, example:Consignment2_3 ;
ev:involves example:LogisticService1_3, ;example:LogisticService2_3 ;
ev:involvesDigitalTwin example:Container1;
ev:involvesDigitalTwin example:RailwayWagon1;
ev:involvesDigitalTwin example:Container2;
ev:involvesDigitalTwin example:RailwayWagon2;
ev:involvesDigitalTwin example:Train1;
ev:involvesPhysicalInfraestructure example:FabricaVehiculos_AA .
En este ejemplo se amplía el ejemplo anterior para incorporar un envío por transporte marítimo. Se reutiliza por tanto todo lo expuesto anteriormente (empresas de neumáticos, contenedor de neumáticos, transportes por carretera y ferrocarril), y se añade un paso posterior que envía por barco un contenedor con vehículos desde la fábrica de vehículos Vehiculos_AA hasta el almacén Almacen_AA situado en el puerto de destino Puerto_BB. Por simplicidad, asumimos que la fábrica de vehículos se encuentra en el puerto de origen Puerto_AA
Además de las transacciones anteriores (Shipment1 y Shipment2), se considera una nueva transacción de negocio:
A continuación se incluye el código RDF correspondiente a esta transacción de negocios, que no supone aún ninguna operación logística.
example:Shipment3 a bs:Shipment ;
bs:createdBy "Vehículos AA";
bs:consigmentCreationTime "XX";
bs:consigmentUpdateTime "XX";
bs:contractCarriageConditions "XX";
bs:involvedConsignor example:Vehiculos_AA ;
bs:involvedConsignee example:Almacen_AA ;
bs:involvedForwarder example:EmpresaGestionTransporteMaritimo_AA ;
bs:TransportPlanIssuanceTime "2022-04-20T17:00:00Z" ;
bs:involvedEvent ex:Event1 ;
bs:partOfTransportMovementType classifications:BreakBulk ;
simple-bs:hasLocationOrigin example:FabricaVehiculos_AA ;
simple-bs:hasLocationDestination example:AlmacenPortuario_BB ;
simple-bs:expectedDeliveryTime "2022-05-13T20:30:01"^^xsd:dateTime ;
simple-bs:containsBusinessTransaction example:Consignment3 .
Asimismo, esta transacción de negocio se convierte en una transacción de negocio más específica (un Consignment):
A continuación se incluye el código RDF correspondiente a esta transacción de negocios. Es importante destacar el uso de las propiedades específicas de transporte marítimo simple-bs:loadPortOfCall, simple-bs:dischargePortOfCall y simple-bs:bookingList:
example:Consignment3 a bs:Consigment ;
simple-bs:hasLocationOrigin example:FabricaVehiculos_AA ;
simple-bs:loadPortOfCall "Puerto_AA" ;
simple-bs:hasLocationDestination example:AlmacenPortuario_BB ;
simple-bs:dischargePortOfCall "Puerto_BB" ;
simple-bs:bookingList "bookingListNumber" ;
simple-bs:expectedDeliveryTime "2022-05-13T20:30:01"^^xsd:dateTime ;
bs:hasService ex:LogisticService3 ;
bs:involvedConsignor example:Vehiculos_AA ;
bs:involvedConsignee example:AlmacenPortuario_BB ;
bs:involvedCarrier example:EmpresaGestionTransporteMaritimo_AA ;
bs:involvedEvent example:Event3_1,example:Event3_2 .
En los ejemplos anteriores han aparecido varias entidades nuevas. De manera simplificada, se incluye información de todas ellas, que podrá ser completada con más detalles (datos de contacto, datos fiscales, etc.)
example:EmpresaGestionTransporteMaritimo_AA a bs:LegalEntity .
example:AlmacenPortuario_AA a dt:Location .
La transacción de negocios Consignment_3 se relaciona con un servicio logístico de transporte.
example:LogisticService3 a bs:TransportService ;
bs:serviceName "Servicio de transporte de fábrica de vehículos AA a almacén portuario AA por parte de la empresa Gestión de Transporte Marítimo AA" ;
bs:hasDepartureLocation example:FabricaVehiculos_AA ;
bs:hasArrivalLocation example:AlmacenPortuario_AA ;
bs:hasLogisticsServiceProvider example:EmpresaGestionTransporteMaritimo_AA ;
bs:usedGoods example:vehiculos1 ;
bs:usedPackage example:packagevehiculos1 ;
bs:usedtransportEquipment example:Container3 ;
bs:involvedCarrier example:EmpresaGestionTransporteMaritimo_AA ;
bs:transportMeans example:Vessel1 .
En los ejemplos anteriores han aparecido varias entidades de tipo equipamiento (contenedores) o medio de transporte (barcos) como parte de los servicios logísticos. También han aparecido las mercancías específicas (vehiculos1) y los paquetes en las que están embaladas y son enviadas (packagevehiculos1). De manera simplificada, se incluye información de todas ellas, que podrá ser completada con más detalles (identificadores específicos, etc.)
#Equipamiento
example:Container3 a dt:Container .
#Medios de transporte
example:Vessel1 a dt:Vessel .
#Mercancías
example:vehiculos1 a dt:Goods ;
dt:goodsDescription "10 vehículos de tipo XX" ;
dt:goodsWeight "10000"^^xsd:integer ;
dt:grossMass "8500"^^xsd:integer ;
dt:goodsTypeCode simple-cl:vehiculos ;
dt:damageRemarks "sin daños" .
#Embalajes
example:packagevehiculos1 a dt:Package ;
dct:identifier "XXXX" ;
cl:packageCode "XXX" ;
dt:hasUNNumber simple-kos:XXX ;
dt:numberOfPackages "1"^^xsd:integer ;
dt:packageLevelType "XXXXXX" .
dt:packageLevelName "XXXXXX" .
dt:packageTypeNumericCode "XXXXXX" .
Se generarán dos eventos principales, de carga en el puerto de origen y descarga en el puerto de destino.
example:Event3_1 a ev:DepartureEvent ;
ev:hasDateTimeType cl:planned ;
ev:hasSubmissionTimeStamp "2022-05-12T19:30:10Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-05-12T19:20:02"^^xsd:dateTime ;
ev:hasMilestone ev:start ;
ev:involvesBusinessTransaction example:Consignment3 ;
ev:involves example:LogisticService3 ;
ev:involvesDigitalTwin example:Vessel1;
ev:involvesPhysicalInfrastructure example:FabricaVehiculos_AA .
ev:involvesPhysicalInfrastructure example:Puerto_AA .
example:Event3_2 a ev:ArrivalEvent ;
ev:hasDateTimeType cl:planned ;
ev:hasSubmissionTimeStamp "2022-05-13T20:30:10Z"^^xsd:dateTime ;
ev:hasTimeStamp "2022-05-13T20:30:01"^^xsd:dateTime ;
ev:hasMilestone ev:start ;
ev:involvesBusinessTransaction example:Consignment3 ;
ev:involves example:LogisticService3 ;
ev:involvesDigitalTwin example:Vessel1;
ev:involvesPhysicalInfrastructure example:AlmacenPortuario_AA .
ev:involvesPhysicalInfrastructure example:Puerto_BB .