-
Notifications
You must be signed in to change notification settings - Fork 21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add CryptoWalletFacet and CryptoAddressFacet #87
Comments
It is likely a crypto wallet will have several state-inspections done over the course of an investigation, e.g. to see its balance before some event and after some event. In QUDT, these would be measurements. CASE and UCO do not currently have demonstration of repeated measurements. ( Hence, I've modified Requirement 2, which before read:
to now read:
(An aside: I'd also adjusted the grammar previously to fit a "Must" form. That did not otherwise alter the meaning.) I've also added Requirement 3:
An example of how QUDT is used to do multiple measurements is in another ontology, the Semantic Sensor Network ontology, under consideration elsewhere in UCO. See the Apartment 134 temperature example. |
This branch and directory houses current development of treating a cryptowallet's balance as a repeatably-measurable property using the SSN, SOSA, and QUDT ontologies. The development currently needs to represent a link between a wallet and an address, and establish CASE classes and properties that are subclasses and subproperties of the corresponding SOSA classes. |
Alex, I may be missing something, but there are a few things that seem a bit off here:
|
Thanks for the feedback, @dannyr101 . This was likely an important nudge before people review this for Tuesday's meeting. Re: the list in 3: Re: 2, seed values: Re: Wallet Address name |
I believe this proposal will require UCO Issue 535 to be resolved before it can progress. |
Background
For a growing number of investigations, there is a need to represent cryptowallets and the account(s) they contain.
Crypto wallets can be hosted by an online service, or stored in a software wallet application, or secured using a hardware wallet.
Requirements
Requirement 1: CASE must be able to represent what cryptoaddress(es) were stored in a given cryptowallet.
Requirement 2: CASE must be able to represent how much cryptocurrency was stored in a given cryptoaddress at a point in time.
Requirement 3: CASE must be able to represent multiple measurements of the balance of a crypto wallet.
Benefits
owl:versionIRI
, giving CDO a chance to tryversionIRI
practices under consideration for CASE's and UCO's versioning.Risks
observable:storageCapacityInBytes
- that property could reduce its name tostorageCapacity
and use theunit:BYTE
unit of measure. In short, adoption of this proposal induces a need in CASE to explain why some numeric properties are represented withqudt:unit
and others aren't.Competencies demonstrated
Competency 1
The cryptoaddress(es) that were stored in a given cryptowallet, and how much cryptocurrency they had.
Admin. note - For this proposal, the competencies should include a sample JSON-LD snippet and two SPARQL queries demonstrating satisfaction of the above competency statement, i.e.
SELECT ?nCryptoWallet ?xCryptoAddress
andSELECT ?nCryptoWallet ?xQuantity
, with the latter demonstrating something similar to usage ofhttp://qudt.org/vocab/unit/AUD
. (?x
prefix is where the admin. review was unclear on what value(s) or value form(s), node or literal, should be returned.)Solution summary
cryptoWalletIdentifier (string): the identifier of a wallet
cryptoWalletName (string): the name assigned to a wallet
cryptoWalletCreatedTime (date): when the wallet was created
cryptoWalletSeed (string): a series of words for accessing crypto associated with the wallet.
cryptoAddress (string): reference to CryptocurrencyAddress containing the value of the cryptocurrency address
cryptoCurrencyType (string): the type of cryptocurrency in the wallet
cryptoAddressFormat (string): P2SH (BASE58)
cryptoAddressName (string): the name assigned to the cryptocurrency address
cryptoAddressCreatedTime (date): when the cryptocurrency address was created
cryptoAddressBalance (currency - qudt): the total amount of cryptocurrency in the cryptocurrency address
cryptoAddressCompletedTransactionCount (integer): how many transactions have been completed using the cryptocurrency address
cryptoAddressTotalSent (currency - qudt): the total amount of cryptocurrency sent by the cryptocurrency address
cryptoAddressTotalReceived (currency - qudt): the total amount of cryptocurrency received by the cryptocurrency address
cryptoAddressPendingTransactionCount (integer: how many transactions are pending for the cryptocurrency address
Add CryptocurrencyAddress observableObject (subClassOf observable:DigitalAddress)
Create example using public data: Wallet Explorer (https://www.walletexplorer.com/wallet/335f3892f622984f
Add unit test showing potential errors in property usage and how to avoid them
Coordination
develop
The text was updated successfully, but these errors were encountered: