| @@ -14,7 +14,7 @@ uuid[v5?] -[is part of]-> file hash, time stamp range [e.g. section of video fil | |||||
| Namespaces: | Namespaces: | ||||
| These are shorthand: | These are shorthand: | ||||
| `dc:xxx` -> Dublin Core | |||||
| `dc:xxx` -> Dublin Core[DublinCore] | |||||
| `upnp:xxx` -> UPnP Content Directory Service | `upnp:xxx` -> UPnP Content Directory Service | ||||
| `ms:xxx` -> medashare defined | `ms:xxx` -> medashare defined | ||||
| @@ -28,15 +28,18 @@ old programs to handle new namespaces. | |||||
| Common dc properties: | Common dc properties: | ||||
| date | |||||
| date (ISO-8601-1, https://www.dublincore.org/specifications/dublin-core/dcmi-terms/terms/date/) | |||||
| creator | creator | ||||
| title | title | ||||
| format (see mime-type) | |||||
| format (not used, see mimetype) | |||||
| description | description | ||||
| extent (file size & duration) | |||||
| extent (file size, pixel dimentions & duration) | |||||
| [1-9][0-9]*(T|G|M|K)?B - file size | |||||
| <regex for ISO 8601 duration> - duration | |||||
| [1-9][0-9]*x[1-9][0-9]*(@[1-9][0-9]*)? - resolution in pixels w/ optional fps | |||||
| spatial (location) | spatial (location) | ||||
| Common upnp properties: | |||||
| Common UPnP properties: | |||||
| artist | artist | ||||
| actor | actor | ||||
| actor@role -- XXX how to represent? | actor@role -- XXX how to represent? | ||||
| @@ -47,6 +50,22 @@ seriesTitle -- title of the TV series e.g. The West Wing | |||||
| programCode | programCode | ||||
| programCode@type (matchingID from SRS, use domain_uniq, e.g. funkthat.com_generic when there isn't anything special about the programCode, funkthat.com_generic_tv when it matches the standard TV show, such as S02E05) | programCode@type (matchingID from SRS, use domain_uniq, e.g. funkthat.com_generic when there isn't anything special about the programCode, funkthat.com_generic_tv when it matches the standard TV show, such as S02E05) | ||||
| Note, the actor@role is represented by the pair (actor, name of | |||||
| character). That is, if there is the property "upnp:actor": "Actor Name", | |||||
| to represent that actor plays the roll "Roll Name", and aditional | |||||
| property/value pair would be added, "Actor Name": "Roll Name". | |||||
| In order to disambiguate actors, there may be an additional property | |||||
| that is "Actor Name": <urn>, where <urn> can be "urn:uuid:<uuid>" or | |||||
| another URI to uniquely identify the actor. If there is not an | |||||
| additional property to disambiguate an actor, it must be assumed that | |||||
| they are different between two objects. It is up to the client to | |||||
| manage this, such as propting if it matches a previously known actor, | |||||
| or if it should create a new one. It is recommended that a random UUID | |||||
| is added, if unknown. It can always be changed. <make it mandatory to | |||||
| add the UUID?> <need an alias db a well w/ recommended value>. <expand | |||||
| upon how equality works, e.g. similar to SQL NULL> | |||||
| Common ms properties: | Common ms properties: | ||||
| tag | tag | ||||
| private -- will be ignored in general searches, unless explicitly added (value does not matter) | private -- will be ignored in general searches, unless explicitly added (value does not matter) | ||||
| @@ -76,3 +95,5 @@ URN for hashes: | |||||
| https://www.nuke24.net/docs/2015/HashURNs.html | https://www.nuke24.net/docs/2015/HashURNs.html | ||||
| https://github.com/hash-uri/hash-uri | https://github.com/hash-uri/hash-uri | ||||
| https://datatracker.ietf.org/doc/html/draft-thiemann-hash-urn-01 | https://datatracker.ietf.org/doc/html/draft-thiemann-hash-urn-01 | ||||
| [DublinCore]: https://www.dublincore.org/resources/userguide/creating_metadata/ | |||||