package org.eclipse.basyx.examples.snippets.urn; | |
import static org.junit.Assert.assertTrue; | |
import org.eclipse.basyx.tools.modelurn.ModelUrn; | |
import org.junit.Test; | |
/** | |
* This code snippet illustrate both constructors of ModelURN class to create URNs | |
* | |
* The BaSyx URN format is as following: | |
* urn:<legalEntity>:<subUnit>:<subModel>:<version>:<revision>:<elementID>#<elementInstance> | |
* | |
* LegalEntity describes the organization that the object referred by the URN belongs to. The sub unit is the | |
* referred sub unit of the organization. The sub model defines the actual sub model that is referred by the | |
* URN, for example AAS for the Asset Administration shell. If sub model shall receive individual URNs, they | |
* may be distinguished by this field. Version and revision define the version and revision of the element that | |
* is referred by this URN. The element is the type of the referred element, e.g. a worker, a device, a product, | |
* or part of a device. The element instance is the concrete instance. | |
* | |
* @author kuhn | |
* | |
*/ | |
public class ConstructURNs { | |
/** | |
* Run code snippet | |
*/ | |
@Test | |
public void snippet() throws Exception { | |
// Create model URN | |
// - The following creates a URN for the AAS of the first device x-509 (instance:001), belonging to de.fhg, sub unit devices.es.iese. | |
// The URN refers to the version 1.0 and revision 3. | |
ModelUrn modelURN1 = new ModelUrn("de.FHG", "devices.es.iese", "AAS", "1.0", "3", "x-509", "001"); | |
// Create model URN using string constructor | |
// - The following creates a URN for the AAS of the first device x-509 (instance:001), belonging to de.fhg, sub unit devices.es.iese. | |
// The URN refers to the version 1.0 and revision 3. | |
ModelUrn modelURN2 = new ModelUrn("urn:de.FHG:devices.es.iese:AAS:1.0:3:x-509#001"); | |
// Validate results | |
// - Check equality of both created URNs | |
assertTrue(modelURN1.getURN().equals(modelURN2.getURN())); | |
} | |
} | |