How the CAN identifiers are formed? - can-bus

I'm new to CAN, So i would like to know how the CAN Identifiers or Message Identifiers are defined and those bits in those ID represents?

Related

Unique identifier for all fix messages related to a sinqle request in quickfix

We need to get a unique identifier for all related fix messages in quickfixj.
scenario: if B lies between A and C and forwards fix messages from A to C and vice versa, we need to get a unique Id for all related messages to cache them in B.
Is there a uniqueId for all fix messages as mentioned above? if yes, does getting that unique identifier same (eg: message.getString(int field)) for all message types, or getting it depends on message type?
Do you mean a unique identifier per Order, for example? If yes, then that would be 11/ClOrdID for a NewOrderSingle (and some other message types). But you'll have other identifiers for other message types, e.g. quotes, market data snapshots, ...
There is no global unique identifier per se, so you would need to make one up. For example a concatenation of SenderCompID and MsgSeqNum and SendingTime should be unique. If you are sure that you will not reset the sequence number intra-day you could probably even leave out the SendingTime.

What data type should the unique IDs be in Neo4j?

I'm about to LOAD some random data into Neo4j. Documentation says that the IDs must be unique. Does the data type of unique identifier matter? For e.g. can I have a unique string as an identifier instead of a (integer) number?
Yes, you can have unique Strings instead on numbers! afaik, any valid data type, even Point

Apple Wallet passes comperation

I have a loyalty programm app where every user can add his loyalty card in Wallet. Each of cards have same passTypeIdentifier and serialNumber but different barcode information. When I already have a card in Wallet and trying to add new card for new user containsPass method of PKPassLibrary returns true. How can I correctly compare these two cards? I can suggest to add field with unique id to backingFields (card number for example), but maybe you have better solution
Your passes should not have the same serial number. From the PassKit Package Format Reference
serialNumber - Serial number that uniquely identifies the pass. No two passes with the same pass type identifier may have the same serial number.
The serial number would typically be the same as the barcode number, or at least related to it in some way.

HL7 V3 Organization identifier to URN:OID

I need to transform an HL7 V3 Organization identifier (root+extension) to an URN.
Organization id is as follows:
<Organization xmlns="urn:hl7-org:v3">
<id>
<item root="2.16.840.1.113883.4.2" extensions="26879954"/>
</id>
...
As fas as I know I can use "URN:OID:2.16.840.1.113883.4.2"
But how to add extension value?
Thanks
You probably cannot. Organization <id> is the Instance Identifier (II) data type. The II data type identifies the root as “a unique identifier that guarantees the global uniqueness of the instance identifier. The root alone may be the entire instance identifier” and the extension as “a character string as a unique identifier within the scope of the identifier root”. In it turns, the root “must be a valid OID, UUID, or HL7 reserved identifier” so you cannot put an URN.
As an option, you may register your own OIDs as following - 2.16.840.1.113883.4.2.26879954 – in this case you need to keep a reference table to uniquely identify organizations.
The difference between these two is that in the fist case you identify a scoping authority and the organization within that authority. In the second case you identify an organization as a separate unique entity which does not belong to any scoping sets.
See HL7v3 Normative Edition for details.
I've been reviewing HL7 CCDA documentation! , and I see some HL7 CCDA templates expressed as: urn:hl7ii:2.16.840.1.113883.10.20.22.1.10:2014-06-09
So I guess the right way to represent an HL7 V3 id as URN:OID is:
urn:hl7ii:{root}:{extension}

Retrieving statement in Jena by its unique ID

I'm building a REST API which will serve information about statements stored in my Jena TDB.
It would be great if each statement has its unique ID so I can use this ID in GET request to retrieve information about particular statement. Is there something like that in Jena?
I know I can retrieve statement(s) by providing appropriate subject/predicate/object identifiers to model.listStatements method, but it would be quite ugly to add these parameters to API GET requests.
In RDF, a triple is defined by its subject, object and predicate. If you have two triples with the same S/P/O, it is really the same triple (value-equality, not instance equality). An RDF graph is a set of triples; if you add a triple twice, the set has only one instance. There is no triple id concept in RDF, and there isn't internally in TDB.
So you could use unique identifiers, say a string of length 4, for every S, every P and every O. Just save them all as key/value (id/resource, id/property) pairs. Then you will have a string of length 12 as unique identifier of your statement.
Even if a statements is deleted and added again, leading to a different id when tagging every statement with an id, this method will yield the same statement every time.

Resources