Upon receipt of the CreateSubscription, SuspendGlobalSubscription or DeleteSubscription request, the Origin-Server shall attempt to update the Global Subscription State, Filtered Global Subscription and/or UPS Subscription State of the specified Application Entity with respect to the specified SOP Instance UID as described in Table CC.2.3-2 in PS3.4 and then return the appropriate HTTP response.
The Service shall return an HTTP status line, including a status code and associated reason phrase.
If the CreateSubscription request was successful, the Service shall return an "HTTP 201 - Created" response code. The response shall contain a "Content-Location" header of the following format:
If the subscription fails, the Service shall return an appropriate failure status line with a response code from Table 6.9.7-2.
Table 6.9.7-2. Status Codes
If the CreateSubscriptionrequest was accepted but the deletion lock was not, the response message shall include the following HTTP Warning header field:
If the request was rejected with an HTTP 403 status code because Filtered Global Subscription is not supported, the response message shall include the following HTTP Warning header field:
This resource suspends an existing Global Subscription or Filtered Global Subscription. The Origin-Server will no longer automatically subscribe the User-Agent to newly-created UPS Instances. This does not delete any existing subscriptions to specific UPS Instances.
The SuspendGlobalSubscription Origin-Server shall behave as described in Section <IP_ADDRESS>.
The Service shall return an HTTP status line, including a status code and associated reason phrase.
If the SuspendGlobalSubscriptionrequest was successful, the Service shall return an HTTP "200 - OK" response code.
If the subscription change fails, the Service shall return an appropriate failure status line with a response code from Table 6.9.8-1.
Table 6.9.8-1. Status Codes
This resource removes existing subscriptions from the specified UPS Instances.
The DeleteSubscription Origin-Server shall behave as described in Section <IP_ADDRESS>.
The Service shall return an HTTP status line, including a status code and associated reason phrase.
If the DeleteSubscriptionrequest was successful, the Service shall return an HTTP "200 - OK" response code.
If the subscription fails, the Service shall return an appropriate failure status line with a response code from Table 6.9.7-1.
Table 6.9.7-1. Status Codes
This resource opens a WebSocket channel that will be used to send Event Reports to the client.
See [RFC6455] for details on the WebSocket protocol.
The Origin-Server maintains the active WebSocket connection and uses it to send Event Report messages for UPS Instances which have subscriptions association with {AETitle} (see Section <IP_ADDRESS>).
If the WebSocket connection is lost at any point the User-Agent can re-establish it by repeating the request.
The state of a WebSocket connection does not affect subscriptions and an Origin-Server is not required to queue messages when the connection is down.
The Service shall return an HTTP status line, including a status code and associated reason phrase.
If the request was successful, the Service shall return an HTTP "101 - Switching Protocols" response code.
If the request fails, the Service shall return an appropriate failure status line with a response code from Table 6.9.10-1.
Table 6.9.10-1. Status Codes
The response message body shall be empty.
The connection remains open and may be used by the server to send Event messages (see Section 6.9.11).
This operation sends an Event Report over an established WebSocket connection.
The request message shall be formed as follows:
The Event Report shall contain all mandatory attributes described indescribed in Table CC.2.4-1 in PS3.4 and Table 10.3-1 in PS3.7 for the event type.
WebSocket Events are encoded as WebSocket data frames with an opcode of "%x1" (text).
The frame payload data shall be a DICOM JSON dataset containing the attributes of the Event Report.
{ "00000002": { "vr" : "UI", [ "1.2.840.10<IP_ADDRESS>.34.6.4" ] }, "00000100": { "vr" : "US", [ 256 ] }, "00000110": { "vr" : "US", [ 23 ] }, "00000800": { "vr" : "US", [ 0 ] }, "00001000": { "vr" : "UI", [ "1.2.840.10<IP_ADDRESS>.<IP_ADDRESS>.3.44.22231" ] }, "00001001": { "vr" : "US", [ 1 ] }, "00741238": { "vr" : "CS", [ "SCHEDULED" ] }, "00744041": { "vr" : "CS", [ "READY" ] } }
The WebSocket protocol does not allow content negotiation so it is not possible to support both XML and JSON encoding of Event Report messages without extending the protocol.
Section CC.2.4.3 in PS3.4 describes the scenarios in which an Origin-Server sends Event Reports to a subscriber and the content of the Event Report messages.
The RS Non-Patient Instance (NPI) Storage Services define a set of RESTful transactions that enable a user agent to retrieve, store, and search an origin server for instances that are not related to a patient.
An NPI Service manages a collection of resources belonging to the categories specified in Section 6.10.1. All NPI Storage Service origin servers shall support the Retrieve Capabilities, Retrieve, and Search transactions. Support for the Store transaction is optional. All NPI Storage Service user agents one or more of the Retrieve Capabilities, Retrieve, Store, or Search transactions.
An NPI Service manages resources from the same NPI Category. The target resource URIs have the following templates:
Table 6.10.1-1 contains the templates for the NPI Resource Categories. It also includes the PS3.3 Section in which the corresponding IOD is defined.
The NPI SOP Classes are listed in Table GG.3-1 in PS3.4 .
The Query Parameters in this section can be used with all NPI transactions.
The origin server shall support the Accept query parameter for all NPI transactions. See Section <IP_ADDRESS>, “Accept Query Parameter”.
The origin server shall support the Charset query parameter for all NPI transactions. See Section <IP_ADDRESS>, “Character Set Query Parameter”.
The NPI Service defines the transactions listed in Table 6.10.3-1
Table 6.10.3-1. NPI Service Transactions
The npi-name specifies the type of resource(s) contained in the payload.
Table 6.10.3-2 shows the target resources permitted for each transaction.
The Retrieve Capabilities transaction retrieves a machine-readable description of the NPI service implemented by an origin server. The response contains a machine-readable Capabilities Description. The Capabilities Description describes the transactions, resources, representations, etc. that are supported by the service(s).
An origin server implementation of an NPI Service shall support the Retrieve Capabilities transaction.
The Retrieve Capabilities request uses the OPTIONS method and has the following format:
OPTIONS SP / SP version CRLF Accept: 1#media-type CRLF *(header-field CRLF) CRLF
Table <IP_ADDRESS>.1.3-1 shows the most common Mandatory, Conditional, and Optional header fields for this transaction.
The origin server shall return a machine-readable description of its capabilities in an Acceptable Media Type.
The format of the response is as follows:
version SP status-code SP reason-phrase CRLF Content-Type: media-type CRLF *(header-field CRLF) CRLF payload
A success response shall have a status code of 200 (OK) or 204 (No Content).
A failure response shall have a 400 or 500 level status code.
The Retrieve transaction retrieves the target NPI resource in a DICOM Media Type.
The Retrieve request has the following syntax:
GETSP /{npi-name}/{uid} SP version CRLF Accept: 1#dicom-media-type CRLF [If-None-Match: entity-tag CRLF] *(header-field CRLF) CRLF
The target URL shall reference one of the resources shown in Table <IP_ADDRESS>.1.1-1.
An origin server shall specify all supported npi-names in its Conformance Statement and in its response to the Retrieve Capabilities transaction.
Table <IP_ADDRESS>.1.3-1 shows the most common Mandatory, Conditional, and common Optional header fields for this transaction.
The origin server shall try to locate the target resource and if found, return it in an Acceptable DICOM Media Type.
The response has the following syntax:
version SP status-code SP reason-phrase CRLF Content-Type: dicom-media-type CRLF [ETag: entity-tag CRLF] [Last-Modified: HTTP-date CRLF] *(header-field CRLF) CRLF Payload
The response shall have an appropriate status code. Table <IP_ADDRESS>.3.1-1 contains the most common status codes for this transaction.
Table <IP_ADDRESS>.3.1-1. Status Codes
This transaction requests that the origin server store the representations of the NPIs contained in the request payload so that they may be retrieved in the future using the Instance UIDs.
Transactions in this service use the POST method. The request syntax is:
POST SP /{npi-name} {/uid} SP version CRLF Content-Type: dicom-media-type CRLF *(header-field CRLF) CRLF payload
The target URL shall reference one of the resources shown in Table <IP_ADDRESS>.1.1-1.
An origin server shall specify all supported npi-names in its Conformance Statement and in its response to the Retrieve Capabilities transaction.
The origin server stores the representations contained in the request payload so that they may be retrieved later using the Retrieve transaction.
Before storing the representations, the origin server may coerce data elements.
If any element is coerced, the Original Attribute Sequence (0400,0561) (see C.12.1 in PS3.3 ) shall be included in the stored DICOM instances. Both the Original Attribute Sequence and the response shall describe the modifications.
The response shall have the following syntax:
version SP status-code SP reason-phrase CRLF *(header-field CRLF) CRLF [Status Report]
The response shall have an appropriate status code. Table <IP_ADDRESS>.3.1-1 contains the most common status codes for this transaction.
Table <IP_ADDRESS>.3.1-1. Common Status Codes
If the origin server failed to store or modified any representations in the request payload, the response payload shall contain a Status Report describing any additions, modifications, or deletions to the stored representations. The Status Report may also describe any warnings or other useful information.
The Search transaction searches the collection of NPI Instances contained in the target resource. The search criteria are specified in the query parameters. Each match includes the default and requested attributes from the matching Instance. A successful response returns a list describing the matching Instances.
The Search transaction uses the GET method and has the following syntax:
GET SP /{npi-name} {?parameter*} SP version CRLF Accept: 1#dicom-media-type CRLF *(header-field CRLF) CRLF
The target URL shall reference one of the resources shown in Table <IP_ADDRESS>.1.1-1.
An origin server shall specify all supported npi-names in its Conformance Statement and in its response to the Retrieve Capabilities transaction.
The parameters in the query component of the target URL specify the matching criteria, the attribute values to be returned, and the results to be returned. The URI template for the query parameters is:
{?parameter*} = "?" {&match*} {&include*} {&offset} {&limit}
See Section <IP_ADDRESS>, “Request” for a description of the syntax of Search Query Parameters.
For each Resource Category the origin server supports, it shall support the behaviors and matching key attributes specified in the corresponding sections in Table <IP_ADDRESS>.1.2.1-1.
The origin server shall perform the search indicated by the request, using the matching behavior specified in Section <IP_ADDRESS> and in the corresponding sections in Table <IP_ADDRESS>.1.2.1-1, and return a response containing the search results, or an appropriate Status Report.
The rules for search results are specified in Section <IP_ADDRESS>.
A success response shall have a status code of 200 (OK) and a payload containing the search results in the Selected Media Type.
A failure response shall contain a Status Report describing the error(s) encountered.
The response shall have an appropriate status code. Table <IP_ADDRESS>.3.1-1 contains the most common status codes for this transaction.
Table <IP_ADDRESS>.3.1-1. Common Status Codes
The origin server shall support the media types listed as Default or Required in Table 6.10.4-1 for all NPI transactions.
The origin server shall support the transactions listed as Required in Table 6.10.5-1.
Implementations shall specify in their Conformance Statement (see PS3.2) and the Capabilities Description (see Section <IP_ADDRESS>):
In addition, for each supported transaction they shall specify:
Retired. See Section 6.1.1.
Parameters specified in this section are applicable to all supported DICOM SOP Classes.
Some of the Query Parameters specified in this section have values that are UIDs. Table 8.1-1 lists error status codes related to UIDs.
Table 8.1-1. UID Related Errors
An origin server that does not check the format of the UID, or does not maintain a history of removed resources, may return a 404 (Not Found).
An error response may include a payload containing an appropriate error message.
To identify a DICOM Object, only one UID is required, because any UID is globally unique. However, the standard requires that the UID of the higher levels in the DICOM Information Model are specified (i.e., series and study), in order to support the use of DICOM devices that support only the baseline hierarchical (rather than extended relational) Query/Retrieve model, which requires the Study Instance UID and Series Instance UID to be defined when retrieving an SOP Instance, as defined in PS3.4.
This parameter specifies that this is a URI service request. The parameter name shall be "requestType", and the value shall be "WADO". It is REQUIRED.
If the value is other than "WADO", and the origin server does not support the value, the response shall be 400 (Bad Request), and may include a payload containing an appropriate error message.
Study Instance UID as defined in PS3.3. This parameter is REQUIRED.
The parameter name shall be "studyUID" for URI mode.
The value shall be encoded as a Unique Identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
Error status codes related to UIDs are specified in Table 8.1-1.
Series Instance UID as defined in PS3.3. This parameter is REQUIRED.
The parameter name shall be "seriesUID" for URI mode.
The value shall be encoded as a Unique Identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
Error status codes related to UIDs are specified in Table 8.1-1.
SOP Instance UID as defined in PS3.3. This parameter is REQUIRED.
The parameter name shall be "objectUID" for URI mode.
The value shall be encoded as a unique identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
Error status codes related to UIDs are specified in Table 8.1-1.
This parameter contains one or more Acceptable Media Types as defined in Section <IP_ADDRESS>. This parameter is OPTIONAL for URI mode.
In URI mode the parameter name shall be "contentType", and its value shall contain one or more media types.
See Section 6.1.1 for details.
Character set with which the returned objects are to be encoded, as defined in the [RFC7230]. This parameter is OPTIONAL for URI mode.
The parameter name shall be "charset" for URI mode.
See Section 6.1.2 for details.
Removal of all patient identification information from within the DICOM Objects, if not already done, as defined in PS3.15. This parameter is OPTIONAL. For the URI mode, it shall only be present if contentType is application/dicom.
The parameter name shall be "anonymize" for URI mode.
The Server may return an error if it either cannot or refuses to anonymize these objects.
The Server shall return a new SOP Instance UID if the content of the object has not already been anonymized.
If this parameter has any other value than "yes", the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
This standard does not introduce any security-related requirements. It is likely that the information contained within DICOM Objects identifies the patient. The protocol used (that is HTTP) can be replaced by HTTPs, which is its secure extension, to protect the information in transit. The underlying DICOM implementation decides whether or not to grant access to a particular DICOM object based on whatever security policy or mechanism it has in place. A server is unlikely to fulfill a request from an unknown user (e.g., accessed via the HTTP protocol) unless it is certain that the data requested has no patient identifying information within it and has been approved for public viewing.
The Anonymize object enables, for example, teaching files systems or clinical trial applications to offer an access to original images stored in a PACS, without disclosing the patient's identity, and requiring storage of a (de-identified) copy of the original image. Anonymization is the responsibility of the Server. In order to preserve patient confidentiality, the Server likely will refuse to deliver an anonymized SOP instance to an unknown or unauthorized person unless the Server is certain that the SOP instance holds no patient identifying information. This would include "blanking out" any annotation area(s) containing nominative information burned into the pixels or in the overlays.
These parameters shall only be included when a request is made for a Single Frame or Multi-frame Image or Video Objects as defined in Section <IP_ADDRESS>.
If any of these parameters are included in a request for non-Image objects (e.g., for SR objects), then the response shall be a 400 (Bad Request), and may include a payload containing an appropriate error message.
Annotation of objects retrieved and displayed as an image. This parameter is OPTIONAL for the URI mode. It shall not be present if contentType is application/dicom, or is a non-image media type (e.g., text/*). When it is not present for image objects, no additional annotation may be burnt in.
When used in conjunction with a presentation state object, it shall be applied after the presentation on the images. When used in conjunction with the region parameter, it shall be applied after the selection of the region.
The parameter name shall be "annotation" for URI mode. Its value is a non-empty list of one or more of the following items, separated by a "," character:
The exact nature and presentation of the annotation is determined by the Server. The annotation is burned into the returned image pixels.
The origin server may support additional values for this parameter.
The origin server shall ignore any values it does not support. If unsupported values are present, the origin server shall include a following Warning header field:
Warning: 299 {+service}: The following annotation values are not supported: <values>
and may include a payload containing an appropriate warning message.
The viewport parameters specify the dimensions of the user agent's viewport. The Viewport Rows and Columns parameters specify the height and width, in pixels, of the returned image.
If these parameters specify viewport dimensions that are either ill-defined or not supported, then the response shall be a 400 (Bad Request), and may include a payload containing an appropriate error message.
The parameter name shall be "rows" for URI mode.
The value shall be expressed as an integer, representing the image height to be returned. It is OPTIONAL for the URI mode. It shall not be present if contentType is application/dicom.
If both "rows" and "columns" are specified, then each shall be interpreted as a maximum, and a size will be chosen for the images within these constraints, maintaining the correct aspect ratio. If the number of rows is absent and the number of columns is present, the number of rows shall be chosen in order to maintain the correct aspect ratio. If both are absent, the images (or selected region) are sent in their original size (or the size of the presentation state applied on the images), resulting as one pixel of screen image for each value in the images data matrix.
The value shall be encoded as an integer string (IS), as specified in PS3.5.
The parameter name shall be "columns" for URI mode.
The value shall be expressed as an integer, representing the image width to be returned. It is OPTIONAL for the URI mode. It shall not be present if contentType is application/dicom.
If both "rows" and "columns" are specified, then each shall be interpreted as a maximum, and a size will be chosen for the images within these constraints, maintaining the correct aspect ratio. If the number of columns is absent and the number of rows is present, the number of columns shall be chosen in order to maintain the correct aspect ratio. If both are absent, the images (or selected region) is sent in its original size (or the size of the presentation state applied on the images), resulting as one pixel of screen for one pixel of the images.
The value shall be encoded as an integer string (IS), as specified in PS3.5.
This parameter allows selection of a rectangular region of an image matrix to be retrieved. The purpose of this parameter is to allow a user to view a selected area of the image matrix, for example at higher magnification.
The parameter is OPTIONAL for the URI mode.
The parameter name shall be "region" for URI mode.
It shall only be present if the Acceptable Media Types are Rendered Media Types. See Section <IP_ADDRESS>.
It shall not be present if the Unique Identifier of the Presentation Object parameter is present.
The value shall be expressed as a list of four positive decimal strings, separated by the ',' character, representing the region of the source images to be returned. These decimal values shall be values in a normalized coordinate system relative to the size of the original image matrix measured in rows and columns, with values ranging from 0.0 to 1.0, and representing in the following order:
the x position of the top left hand corner of the region to be retrieved, 0.0 corresponding to the first column of the image matrix.
the y position of the top left hand corner of the region to be retrieved, 0.0 corresponding to the top row of the image matrix.
the x position of the bottom right hand extent of the region, 1.0 corresponding to the last column of the image matrix, 0.0 being forbidden.
the y position of the bottom right hand extent of the region, 1.0 corresponding to the last row of the image matrix, 0.0 being forbidden.
If this parameter is supported, an image matrix corresponding to the specified region shall be returned with size corresponding to the specified normalized coordinate values otherwise the complete image matrix shall be returned. If the presentationUID parameter is present, the region shall be selected after the corresponding presentation state has been applied on the images.
If this parameter specifies an ill-defined region, the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
The Windowing parameters are optional; however, if either is present, both shall be present. If only one is present the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
The Windowing and Presentation State parameters shall not be present in the same request. If both are present the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
The Windowing parameters shall not be present if contentType is application/dicom; if either is present the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
The parameter name shall be "frameNumber" for URI mode.
Specifies that the single frame with that number within a multi-frame image object, as defined in PS3.3 that shall be returned. It is OPTIONAL. It shall not be present if contentType is application/dicom.
then the response shall be a 400 (Bad Request), and may include a payload containing an appropriate error message.
The value shall be encoded as an integer string (IS), as specified in PS3.5.
The parameter name shall be "imageQuality" for URI mode. It is OPTIONAL for the URI mode. It shall not be present if contentType is application/dicom, except if the transferSyntax parameter is present and corresponds to a lossy compression.
If the requested media type is for a lossy compressed image (e.g., image/jpeg), this parameter indicates the required quality of the image to be returned within the range 1 to 100, 100 being the best quality.
The value shall be encoded as an integer string (IS), as specified in PS3.5.
Decompression and re-compression may degrade the image quality if the original image was already irreversibly compressed. In case the image has been already lossy compressed using the same format as required (e.g., jpeg), it may be sent as it is without decompressing and re-compressing it.
If the value of this parameter is less than 1 or greater than 100, then the response shall be a 400 (Bad Request), and may include a payload containing an appropriate error message.
The parameters in this Section specify the Series and SOP Instance UIDs of a Presentation State. They are OPTIONAL; however, if either is present, both shall be present. If only one is present the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
If the Presentation State parameters are present, then only the Annotation, Image Quality, Viewport and Region parameters may also be present. If any of the other image rendering parameters described in Section 8.2 are present the response shall be 400 (Bad Request), and may include a payload containing an appropriate error message.
If the target resource is not a Presentation State then the response will be 400 (Bad Request), and may include a payload containing an appropriate error message.
The Presentation State parameters shall not be present if contentType is application/dicom; if either is present the origin server shall return a 400 (Bad Request) response, and may include a payload containing an appropriate error message.
The parameter name shall be "presentationUID" for URI mode.
The value is the SOP Instance UID of the Presentation State storage object to be applied to the images.
The value shall be encoded as a unique identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
If this parameter is present, then the Region of the Image parameter shall not be present. See Section 8.2.4.
If the Presentation Size Mode in the presentation state is SCALE TO FIT or TRUE SIZE, then the displayed area specified in the presentation shall be scaled to fit the size specified by the rows and columns parameters if present, otherwise the displayed area selected in the presentation state will be returned without scaling.
The intent of the TRUE SIZE mode in the presentation state cannot be satisfied, since the physical size of the pixels displayed by the web browser is unlikely to be known. If the Presentation Size Mode in the presentation state is MAGNIFY, then the displayed area specified in the presentation shall be magnified (scaled) as specified in the presentation state. It will then be cropped to fit the size specified by the rows and columns parameters, if present.
Any Displayed Area relative annotations specified in the presentation state are rendered relative to the Specified Displayed Area within the presentation state, not the size of the returned image.
Though the output of the presentation state is defined in DICOM to be in P-Values (grayscale values intended for display on a device calibrated to the DICOM Grayscale Standard Display Function PS3.14), the grayscale or color space for the images returned by the request is not defined by this standard.
The parameter name shall be "presentationSeriesUID" for URI mode.
The value is the Series Instance UID of the Series containing the Presentation State storage object to be applied on the images.
If this parameter is present, then the Region of the Image parameter shall not be present. See Section 8.2.4.
The value shall be encoded as a unique identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
For the URI mode the parameter name shall be "transferSyntax" containing one value.
The Transfer Syntax to be used within the DICOM image objects, as specified in PS3.6. This parameter is OPTIONAL for the URI mode. It shall not be present if contentType is other than application/dicom.
By default the DICOM object(s) returned shall be encoded in Explicit VR Little Endian. Neither Implicit VR, nor Big Endian shall be used. The response shall be the Transfer Syntax requested if possible. If it is not possible for the response to be sent using the requested transfer syntax then the Explicit VR Little Endian Uncompressed Transfer Syntax shall be used.
The transfer syntax can be one of the JPIP Transfer Syntaxes, in which case the returned objects will contain the URL of the JPIP provider for retrieving the pixel data.
The value(s) shall be encoded as a unique identifier (UID) string, as specified in PS3.5, except that it shall not be padded to an even length with a NULL character.
This Standard uses the URI syntax as defined in [RFC3986] Uniform Resource Identifier (URI): Generic Syntax and extends it by specifying the syntax of the query component of DICOM URIs. The grammar for the query component is defined using [RFC5234] Augmented BNF for Syntax Specifications: ABNF.
DICOM URIs may use the query component of the URI to specify request parameters. The following grammar defines the general syntax of parameters contained in the query component of the URI. Specific HTTP transactions defined elsewhere in this standard may further refine the legal <name> and/or <value> rules.
query-component = parameter [ *("&" parameter) ] parameter = name "="" value name = *qchar value = *qchar qchar = unreserved / pct-encoded / qspecial qspecial = "/" / "?" / ":" / "@" / "!" / "$" / "'" / "(" / ")" / "*" / "+" / "," / ";"
The following rules are defined in [RFC3986] (Normative). They are reproduced here for convenience.
unreserved = ALPHA / DIGIT / "-" / "." / "_" / "~" pct-encoded = "%" HEXDIG HEXDIG
This grammar allows the query component to contain any of the legal characters as defined by [RFC3986].
No whitespace is permitted in URIs. Whitespace around line breaks and the line breaks themselves should be stripped before parsing the URI (See [RFC3986] Appendix C).
[RFC3986] does not permit an empty query component, i.e., if the "?" appears in the URI then there must be some legal query parameters in the URI.
The <qchar> rule defined above is the <pchar> rule of [RFC3986], which defines the legal character for the query component, minus the characters "="" and "&".
http://www.hospital-stmarco/radiology/wado.php?requestType=WADO &studyUID=<IP_ADDRESS>.59.40211.12345678.678910 &seriesUID=<IP_ADDRESS>.59.40211.789001276.14556172.67789 &objectUID=<IP_ADDRESS>.59.40211.2678810.87991027.899772.2
http://server234/script678.asp?requestType=WADO &studyUID=<IP_ADDRESS>.59.40211.12345678.678910 &seriesUID=<IP_ADDRESS>.59.40211.789001276.14556172.67789 &objectUID=<IP_ADDRESS>.59.40211.2678810.87991027.899772.2 &charset=UTF-8
Retrieving a region of a DICOM image, converted if possible in JPEG2000, with annotations burned into the image containing the patient name and technical information, and mapped into a defined image size:
https://aspradio/imageaccess.js?requestType=WADO &studyUID=<IP_ADDRESS>.59.40211.12345678.678910 &seriesUID=<IP_ADDRESS>.59.40211.789001276.14556172.67789 &objectUID=<IP_ADDRESS>.59.40211.2678810.87991027.899772.2 &contentType=image%2Fjp2;level=1,image%2Fjpeg;q=0.5 &annotation=patient,technique &columns=400 &rows=300 ®ion=0.3,0.4,0.5,0.5 &windowCenter=-1000 &windowWidth=2500
Retrieving a DICOM image object using the baseline 8-bit lossy JPEG transfer syntax, and de-identified:
http://www.medical-webservice.st/RetrieveDocument?requestType=WADO &studyUID=<IP_ADDRESS>.59.40211.12345678.678910 &seriesUID=<IP_ADDRESS>.59.40211.789001276.14556172.67789 &objectUID=<IP_ADDRESS>.59.40211.2678810.87991027.899772.2 &contentType=application%2Fdicom &anonymize=yes &transferSyntax=1.2.840.10<IP_ADDRESS>.50
There are multiple applications, in which DICOM and "web-based" environments are interacting. "Web-based" means information and communication systems that are using Internet related technologies (Web, e-mail…). The basic feature supported by this standard is a mechanism for the "Web-based" system to retrieve a DICOM object from the "DICOM-based" system.
Referencing an image or a report from an electronic patient record (EPR)
Providing access by outside referring doctors to a hospital web server that contains references to reports, images and waveforms
Providing access to anonymized DICOM reports, images and waveforms via a web server, for teaching purposes and for clinical trials.
To retrieve DICOM Objects using "WADO", the "web-based" system must "know" the UIDs (Study, Series, SOP Instance) of the objects it needs to retrieve. These may be obtained through different methods (reception of a standardized message containing a document containing the reference to the DICOM Objects, query of other systems…) that are beyond the scope of this standard.
Table D-1 provides a mapping of some IANA Character Set Registry Preferred MIME Names to DICOM Specific Character Set Defined Terms.
JSON is a text-based open standard, derived from JavaScript, for representing data structures and associated arrays. It is language-independent, and primarily used for serializing and transmitting lightweight structured data over a network connection. It is described in detail by the Internet Engineering Task Force (IETF) in [RFC4627], available at http://www.ietf.org/rfc/rfc4627.txt.
The DICOM JSON Model complements the XML-based Native DICOM Model, by providing a lightweight representation of data returned by DICOM web services. While this representation can be used to encode any type of DICOM Data Set it is expected to be used by client applications, especially mobile clients, such as described in the QIDO-RS use cases (see Annex HHH “Transition from WADO to RESTful Services (Informative)” in PS3.17).
The DICOM JSON Model follows the Native DICOM Model for XML very closely, so that systems can take advantage of both formats without much retooling. The Media Type for DICOM JSON is application/dicom+json. The default character repertoire shall be UTF-8 / ISO_IR 192.
Multiple results returned in JSON are organized as a single top-level array of JSON objects. This differs from the Native DICOM Model, which returns multiple results as a multi-part collection of singular XML documents.
<?xml version="1.0" encoding="UTF-8" xml:space="preserve" ?> <NativeDicomModel> <DicomAttribute tag="0020000D" vr="UI" keyword="StudyInstanceUID"> <Value number="1">1.2.392.200036.9<IP_ADDRESS>.1762893313.1029997326.945873</Value> </DicomAttribute> </NativeDicomModel> … <?xml version="1.0" encoding="UTF-8" xml:space="preserve" ?> <NativeDicomModel> <DicomAttribute tag="0020000D" vr="UI" keyword="StudyInstanceUID"> <Value number="1">1.2.444.200036.9<IP_ADDRESS>.1762893313.1029997326.945876</Value> </DicomAttribute> </NativeDicomModel>
The DICOM JSON Model object is a representation of a DICOM Data Set.
The internal structure of the DICOM JSON Model object is a sequence of objects representing attributes within the DICOM Data Set.
Attribute objects within a DICOM JSON Model object must be ordered by their property name in ascending order.
Group Length (gggg,0000) attributes shall not be included in a DICOM JSON Model object.
The name of each attribute object is:
Each attribute object contains the following named child objects:
vr: A string encoding the DICOM Value Representation. The mapping between DICOM Value Representations and JSON Value Representations is described in Section F.2.3.
Value: An array containing one of:
The Value Field elements of a DICOM attribute with a VR other than PN, SQ, OB, OD, OF, OL, OW, or UN (described in Section F.2.4)
The encoding of empty Value Field elements is described in Section F.2.5
The Value Field elements of a DICOM attribute with a VR of PN. The non-empty name components of each element are encoded as a JSON strings with the following names:
JSON DICOM Model objects corresponding to the sequence items of an attribute with a VR of SQ
BulkDataURI: A string encoding the WADO-RS URL of a bulk data item describing the Value Field of an enclosing Attribute with a VR of DS, FL, FD, IS, LT, OB, OD, OF, OL, OW, SL, SS, ST, UC, UL, UN, US, or UT (described in Section F.2.6)
InlineBinary: A base64 string encoding the Value Field of an enclosing Attribute with a VR of OB, OD, OF, OL, OW, or UN (described in Section F.2.7)
For Private Data Elements, the group and element numbers will follow the rules specified in Section 7.8.1 in PS3.5
The person name representation is more closely aligned with the DICOM Data Element representation than the DICOM PS3.19 XML representation.
The value representation (VR) is included in each DICOM JSON Model attribute object and named "vr". For example:
"vr": "CS"
All DICOM Value Representations are mapped to specified JSON Data Types (see Table F.2.3-1). The JSON encodings shall conform to the Definition, Character Repertoire (if applicable) and Length of Value specified for that Value Representation (see Section 6.2 “Value Representation (VR)” in PS3.5 ) with the following exceptions:
Table F.2.3-1. DICOM VR to JSON Data Type Mapping
|
Object containing Person Name component groups as strings (see Section F.2.2) |
||
|
Universal Resource Identifier or Universal Resource Locator (URI/URL) |
||
Although data, such as dates, are represented in the DICOM JSON model as strings, it is expected that they will be treated in the same manner as the original attribute as defined by Chapter 6 in PS3.6 .
The value or values of a given DICOM attribute are given in the "Value" array. The value multiplicity (VM) is not contained in the DICOM JSON object.
"Value": [ "bar", "foo" ]
"Value": [ "bar" ]
If an attribute is present in DICOM but empty (i.e., Value Length is 0), it shall be preserved in the DICOM JSON attribute object containing no "Value", "BulkDataURI" or "InlineBinary".
If a multi-valued attribute has one or more empty values these are represented as "null" array elements. For example:
"Value": [ "bar", null, "foo" ]
If a sequence contains empty items these are represented as empty JSON object in the array.
"Value": [ { … }, { }, { … } ]
If an attribute contains a "BulkDataURI" , this contains the URI of a bulk data element as defined in Table A.1.5-2 in PS3.19 .
If an attribute contains an "InlineBinary", this contains the base64 encoding of the enclosing attribute's Value Field.
There is a single InlineBinary value representing the entire Value Field, and not one per Value in the case where the Value Multiplicity is greater than one. E.g., a LUT with 4096 16 bit entries that may be encoded in DICOM with a Value Representation of OW, with a VL of 8192 and a VM of 1, or a US VR with a VL of 8192 and a VM of 4096 would both be represented as a single InlineBinary string.
All rules (e.g., byte ordering and swapping) in DICOM PS3.5 apply.
Implementers should in particular pay attention to the PS3.5 rules regarding the value representations of OD, OF, OL and OW.
The transformation between the Native DICOM Model XML and the DICOM JSON model cannot be done through the use of generic XML - JSON converters.
The mapping between the two formats is as follows (see also Table F.3.1-1):
The XML "NativeDicomModel" element maps to the DICOM JSON Model Object
Each "DicomAttribute" element maps to an attribute object within the DICOM JSON model object
The "tag" attribute maps to the JSON object name
The Native DICOM Model XML allows for duplicate Tag values and the DICOM JSON model does not. To resolve this, private attribute Tag values must be remapped according to the conflict avoidance rules specified in Section 7.8.1 “Private Data Element Tags” in PS3.5 .
"PersonName" elements map to objects within the "Value" array. For a "PersonName" element with the attribute "number=n":
The "uri" attribute of the "BulkData" element maps to the "BulkDataURI" string
The "InlineBinary" element maps to the "InlineBinary" string
Table F.3.1-1. XML to JSON Mapping
|
DICOM PS3.19 XML |
|
|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
// The following example is a QIDO-RS SearchForStudies response consisting // of two matching studies, corresponding to the example QIDO-RS request: // GET http://qido.nema.org/studies?PatientID=12345&includefield=all&limit=2 [ { // Result 1 "00080005": { "vr": "CS", "Value": [ "ISO_IR 192" ] }, "00080020": { "vr": "DT", "Value": [ "20130409" ] }, "00080030": { "vr": "TM", "Value": [ "131600.0000" ] }, "00080050": { "vr": "SH", "Value": [ "11235813" ] }, "00080056": { "vr": "CS", "Value": [ "ONLINE" ] }, "00080061": { "vr": "CS", "Value": [ "CT", "PET" ] }, "00080090": { "vr": "PN", "Value": [ { "Alphabetic": "^Bob^^Dr." } ] }, "00081190": { "vr": "UR", "Value": [ "http://wado.nema.org/studies/ 1.2.392.200036.9<IP_ADDRESS>.1762893313.1029997326.945873" ] }, "00090010": { "vr": "LO", "Value": [ "Vendor A" ] }, "00091002": { "vr": "UN", "InlineBinary": [ "z0x9c8v7" ] }, "00100010": { "vr": "PN", "Value": [ { "Alphabetic": "Wang^XiaoDong", "Ideographic": "王^小東" } ] }, "00100020": { "vr": "LO", "Value": [ "12345" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital A" ] }, "00100030": { "vr": "DT", "Value": [ "19670701" ] }, "00100040": { "vr": "CS", "Value": [ "M" ] }, "00101002": { "vr": "SQ", "Value": [ { "00100020": { "vr": "LO", "Value": [ "54321" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital B" ] } }, { "00100020": { "vr": "LO", "Value": [ "24680" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital C" ] } } ] }, "0020000D": { "vr": "UI", "Value": [ "1.2.392.200036.9<IP_ADDRESS>.1762893313.1029997326.945873" ] }, "00200010": { "vr": "SH", "Value": [ "11235813" ] }, "00201206": { "vr": "IS", "Value": [ 4 ] }, "00201208": { "vr": "IS", "Value": [ 942 ] } }, { // Result 2 "00080005": { "vr": "CS", "Value": [ "ISO_IR 192" ] }, "00080020": { "vr": "DT", "Value": [ "20130309" ] }, "00080030": { "vr": "TM", "Value": [ "111900.0000" ] }, "00080050": { "vr": "SH", "Value": [ "11235821" ] }, "00080056": { "vr": "CS", "Value": [ "ONLINE" ] }, "00080061": { "vr": "CS", "Value": [ "CT", "PET" ] }, "00080090": { "vr": "PN", "Value": [ { "Alphabetic": "^Bob^^Dr." } ] }, "00081190": { "vr": "UR", "Value": [ "http://wado.nema.org/studies/ 1.2.392.200036.9<IP_ADDRESS>.2162893313.1029997326.945876" ] }, "00090010": { "vr": "LO", "Value": [ "Vendor A" ] }, "00091002": { "vr": "UN", "InlineBinary": [ "z0x9c8v7" ] }, "00100010": { "vr": "PN", "Value": [ { "Alphabetic": "Wang^XiaoDong", "Ideographic": "王^小東" } ] }, "00100020": { "vr": "LO", "Value": [ "12345" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital A" ] }, "00100030": { "vr": "DT", "Value": [ "19670701" ] }, "00100040": { "vr": "CS", "Value": [ "M" ] }, "00101002": { "vr": "SQ", "Value": [ { "00100020": { "vr": "LO", "Value": [ "54321" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital B" ] } }, { "00100020": { "vr": "LO", "Value": [ "24680" ] }, "00100021": { "vr": "LO", "Value": [ "Hospital C" ] } } ] }, "0020000D": { "vr": "UI", "Value": [ "1.2.392.200036.9<IP_ADDRESS>.2162893313.1029997326.945876" ] }, "00200010": { "vr": "SH", "Value": [ "11235821" ] }, "00201206": { "vr": "IS", "Value": [ 5 ] }, "00201208": { "vr": "IS", "Value": [ 1123 ] } } ]
[RFC4627] (Normative JSON definition)
JSON. http://www.json.org/ (Informative)
Wikipedia, definition of JSON. http://en.wikipedia.org/wiki/JSON (Informative)
JSON in FHIR. http://www.hl7.org/implement/standards/fhir/formats.htm#json (Informative)
While the WADL specification only specifies an XML encoding for the WADL payload, the data structure can easily be represented using JSON. Additionally, conversion from XML to JSON and vice-versa can be done in a lossless manner.
The JSON encoding of WADL XML elements depends on whether the element is:
A "doc" element is represented as an array of objects, where each object may contain:
"doc": [ { "@xml:lang": "en", "value": "Granular cell tumor" }, { "@xml:lang": "ja", "value": "顆粒細胞腫" }, { "@xml:lang": "fr", "value": "Tumeur à cellules granuleuses" } ]
All unique WADL XML elements are represented as an object whose name is the name of the XML element and where each member may contain:
"request": { "param": [ ... ], "representation": [ ... ] }


Setup Angularjs Development Environment
Mock Data For Angular 9 Applications With Json Server Part 2 Final By Kaustubh Talathi Medium
Implement Mock Stubby Server Angular By Dheeraj Jaiswal Medium
Testing Angular Js Application With Wallaby Js Wallaby Js Blog
Github Angular Bower Material This Repository Is Used For Publishing The Angularjs Material V1 X Library
Angularjs Unit Testing Testing Tools Fundamentals Of Unit Testing
Angularjs Cheat Sheet By Proloser Download Free From Cheatography Cheatography Com Cheat Sheets For Every Occasion
Top 18 Most Common Angularjs Mistakes That Developers Make Toptal
Unit Testing In Angular Js Abhijit Patra
Your First Angular Project In Visual Studio Angular First
Github Angular Bower Angular Mocks Angular Mocks Js Bower Repo
Wzbmup9rt Ektm
Angularjs Vs Nodejs Vs Reactjs Which One Would You Choose
The Perfect Mock Rest Backend For Your Angular App By F Laurens Letsboot Medium
Using Mocks For Testing In Javascript With Jest
Aanngguullaarrjjss Mmoocckk Tteesstt Iiiiii Free Download Pdf
Unit Testing Angularjs Controllers Using Karma And Jasmine Dotnetcurry
Test Angularjs Application With Gulp Jasmine Karma And Istanbul By Saptarshi Chatterjee Medium
Testing Angularjs With Jasmine And Karma Part 1 Scotch Io
Mock Data For Angular 9 Applications With Json Server Part 1 By Kaustubh Talathi Medium
Unit Testing And Coverage For Angularjs
Angularjs Tools Tutorial For Scaffolding Testing More Toptal
Pin On Javascript Framework And Library
Angularjs Ui Development Packt
Angular File Download With Progress Nils Mehlhorn


abstract class DefaultChildItem : ChildItem
Default implementation of ChildItem
Author
Camerash
See Also
inner class ViewHolder : ViewHolder
Default implementation of ViewHolder of ChildItem |
DefaultChildItem()
Default implementation of ChildItem |
open fun getDefaultBackgroundColorRes(): Int
Supply the default color resource used by ChildItem background (Unselected) |
|
open fun getDefaultTextColorRes(): Int
Supply the default color resource used by ChildItem text (Unselected) |
|
open fun getLayoutRes(): Int
Supply default layout resource |
|
open fun getSelectedBackgroundColorRes(): Int
Supply the selected color resource used by ChildItem background |
|
open fun getSelectedTextColorRes(): Int
Supply the selected color resource used by ChildItem text |
|
open fun getViewHolder(v: View): ViewHolder
Supply the ViewHolder implementation |
abstract fun getTitle(): String
Supply title for the ChildItem |


_Pitch_Black_ (R) ** (out of ****)
Much imagination can be seen in the science fiction thriller _Pitch_Black_--and I mean "seen": in a time where all the far-off worlds in distant galaxies have come to look the same, cinematographer David Eggby has given the film's central planet a look that is distinctly new and alien. But that is the only thing free from the cookie cutter in David Twohy's otherwise derivative action film.
The plot is a ripoff of _Aliens_, with a group of people marooned on a desert planet being hunted down by ravenous alien creatures; these creatures themselves resemble the Alien, with a couple of alterations (the most major one being that some have wings). There is another added wrinkle--they only come out in the dark, and when the planets multiple suns undergo simultaneous eclipse, the humans must band together to survive.
Just who are these humans, anyway? There is very little characterization in the script by Twohy and Jim and Ken Wheat. The ostensible lead is fry (Radha Mitchell), a pilot with the requisite personal trauma, which is linked to the crash that placed them on the planet. The other two main characters are just as shallow, but at least they're given some type of memorable characteristic (everyone else isn't). Johns (Cole Hauser) is a lawman who is perhaps even shadier than his prisoner, the murderer Riddick (Vin Diesel), who has special night vision enhanced eyes. Riddick's escape from custody makes for a tedious timekilling subplot before the alien story gets underway; with all the others fearing for their lives while trying to locate him, the film resembles an outer space slasher film.
Character is not as important as action and effects in films such as _Pitch_Black_, and while competently done, nothing here breaks any new ground in those departments; the slow-mo and quick cut style Twohy uses is a pale imitation of John Woo. What is fresh, as I had mentioned, is Eggby's sterling cinematography. The early exterior shots on the planet are striking, with all the colors washed out other than garish shades of yellow. Another interesting conceit is that each of the planet's three sons bear a different hue; as such, when in the light of the blue sun, for instance, the image is awash in blue, etc.
Such striking use of color goes out the window when the key eclipse takes place, and _Pitch_Black_'s look matches its title. From that point on, with the action and effects failing to really dazzle, one looks to Twohy to provide something of interest in the story. But no such thing ever comes, and the virtual absence of humor backfires, ironically making the some of the proceedings laughable (the overwrought "emotional" moments come off especially ridiculous). _Pitch_Black_ may actually please most audiences for capably executing most of its desired task, but it takes something a bit more to make a lasting impression in a crowded genre.
Michael Dequina<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>|<EMAIL_ADDRESS>Mr. Brown's Movie Site: http://welcome.to/mrbrown CinemaReview Magazine: http://www.CinemaReview.com on ICQ: #25289934 | on AOL Instant Messenger: MrBrown23
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Upload an image of a check. The image will be stored in Object Storage a message will be published to Event Streams to inform any listeners that a check is ready for processing.
Upload a check
Uploaded checks


Resources
-
UMLGraph Homepage describes
how to control the drawing of class diagrams. Very useful if you want to create
more detailed diagrams. You can also download the UMLGraph from there.
-
You can download GraphViz from GraphViz Homepage.
GraphViz is also a prerequisite for using this plug-in.
-
You need to download and install
plotutils package if you want to generate UMLGraph sequence diagrams.


Dress Me
Type in your city to check the weather:
Get Weather
Your wardrobe:
Click to see your outfit for today:
Clear


Videos I made in preparation for the AMC 10.
OVERVIEW
These videos cover a wide range of topics I spent studying in preparation for the AMC 10. This includes using Auxiliary Lines, Variables, and constructing Proofs for Geometry, problems in Number Theory, Counting & Probability, and other miscellanous topics.
Geometry
I cover the use of Auxiliary lines, adding Variables, and constructing proofs in geometry problems. I also explain essential proof, including Ptolemy's theorem, Circle theorems, Power of Point, and more.
Number Theory
I cover Number Theory essentials, such as CRT, Wilson's, and other common theorems, and their usage in problems.
Counting & Probability
In these videos, I attempt many C&P problems to improve myself in the subject.


Hypertext Transfer Protocol
- application layer used primarily to retrieve hypertext (on hypermedia) documents and reources on the World Wide Web.
- jointly developed by the W3C and the IETF.
Version History
HTTP 0.9 (1991)
- Phases: Connection -> Request -> Response -> Disconnection (4 steps)
HTTP 1.0
- Request For Comments (RFC) - 1945, May 1996
HTTP 1.1
- RFC 2068 - Jan 1997
- RFC 2616 - Jun 1999
- RFC 7230-7235 - Jun 2014
HTTP 2.0
- RFC 7540 - May 2015
Hyper Text Transfer Protocol (HTTP) Unsecure
Based on a client-server architecture.
Client, aka User Agents (UA)
- Web Browser, Web Crawlers/Spiders, Other End USer Tools and Applications
Server
- Origin Server, Proxy Server (ex. Authentication Server), Gateways, Tunnels
HTTP Resource Addressing
Identifies using Uniform Resource Identifer (URI; RFC 3986) or more specifically, HTTP URIs.
Two Subtypes of URI:
- Uniform Resource Name (URN) - Example: International Standard Book Number (ISBN), Universal Product Code (UPC)
- Uniform Resource Locator (URL) - Example: google.com
Authority
- User information/authentication credentials (deprecated)
- Host - domain name (resolved to an ip address using dns) of the server where the resource resides (or will be created).
- Port Number
Path to Resource (resolved relative to the document root on the server)
- Fragment Identifier - starts with a hashtag (#).
Protocol
- a set of rules that needs to be followed when messages are communicated in the Internet.
Examples:
- HTTP (Hypertext Transfer Protocol) - a protocol used for transferring messages over the Internet.
- HTTPs (Secured Hypertext Transfer Protocol) - a protocol with a combination of HTTP and SSL or Secure Sockets Layer which makes the sharing of information more secure.
HTTP Response Message
Status Line
- The first line of the response message. It start with the protocol version and the numeric status code with the description.
Response Header
- This allows the server to pass additional messages that cannot be placed in the Status Line.
Message Body
- The message body is used to carry the entity-body associated with the request or response. It only differs from the entity-body when transfer coding has been applied.
HTTP Request Message
- request line (carriage return line feed) - terminated line consisting)
Methods
- Standard Method
- safe methods: get(retrieve), head, options, trace, connect
- modify server/not safe: post, put, delete
- idempotent: get, head, put, delete, options, trace
- Extension Method
- WebDAV (RFC 4918) - PROPFIND, PROPPATCH, MKCOL (make a collection/create folder), COPY, MOVE, LOCK, UNLOCK
- Options - query what the server can do
- Trace - request a loop-back of the request message; typically used for testing/diagnostic of the request/response chain; to know where you committed error (Example: 34 - length of the section (hex 1 byte) Trace/index.html HTTP/1.1 Host: www.webtek.org (actual data))
- Connect - establishment of a tunnel to the destination origin servers and if successful, thereafter restrict its behavior to blind-forwarding of pockets in both directions, until the tunnel is closed.
- cacheable method
- safe method
- idempotent method
Request URI
- RFC 2616 - 4236 Update Required
HTTP Request Methods
GET
- Request data from a specified source.
HEAD
- Same as GET but returns only HTTP headers and no document body.
POST
- Submit data to be processed to a specified resources.
OPTIONS
- OPTIONS method represents a request for information about the communication options available on the request/response chain identified by the Request-URI.
TRACE
- TRACE method is used to invoke a remote, application-layer loop- back of the request message.
PUT
- Uploads a representation of the specified URI.
DELETE
- Deletes the specified resource.
CONNECT
- Converts the request connection to a transparent TCP/IP tunnel
Safe Methods:
- Get, Head, Options, Trace
Not Safe Methods:
- Post, Put, Delete
Idempotent:
Get, Head, Put, Delete, Options, Trace
HTTP Message Headers
General Header Fields
This header fields have general applicability for both request and response messages.
- Connection
- Data
- Pragma
- Transfer encoding
- Trailer
- Upgrade
- Via
- Warning
Request Header Fields
The request-header fields allow the client to pass additional information about the request, and about the client itself, to the server. These fields act as request modifiers.
- Accept language
- Accept encoding
- Authorization
- Proxy
- Expect
- From
- Host
Response Header Fields
The response-header fields allow the server to pass additional information about the response which cannot be placed in the Status- Line. These header fields give information about the server and about further access to the resource identified by the Request-URI.
- Accept - range
- Age
- ETag
- Location
- Proxy - authenticate
- WWW - authenticate
- Retry - after
- Server
- Vary
Entity Header Fields
This header fields define meta information about the entity-body or, if no body is present, about the resource identified by the request.
- Allow
- Content - encoding
- Content - language
- Content - length
- Content - location
- Content - MDS
- Content - range
- Content - type
- Expires
- Last - modified
Conditional Header
- Request - if-non-match
- Condition - if-modified.since
- If - ranges
- Max - forward
- Trailer encoding
- User - agent
Extended Headers
- Upgrade
- Do not track (DNT)
HTTP Status Codes
Informational(1xx)
100 Continue
101 Switching Protocols
Success(2xx)
200 OK
202 Accepted
203 Non-authorative Information
204 No Content
205 Reset Content
206 Partial Content
Redirection(3xx)
300 Multiple Choices
301 Moved Permanently
302 Found
303 See Other
304 Not Modified
305 Use Proxy
306 Switch Proxy
307 Temporary Redirect
Client Error(4xx)
400 Bad Request
401 Unauthorized
402 Payment Required
403 Forbidden
404 Not Found
405 Method not Allowed
406 Not Acceptable
407 Proxy Authentication Required
408 Request Timeout
409 Conflict
410 Gone
411 Length Required
412 Precondition Failed
413 Request Entity Too Large
414 Request-URI Too Long
415 Unsupported Media Type
416 Request Range Not Satisfiable
417 Expectation Failed
426 Upgrade Required
Server Error(5xx)
500 Internal Server Error
501 Not Implemented
502 Bad Gateway
503 Service Unavailable
504 Gateway Timeout
505 HTTP Version Not Supported


Admin
Dashboard
Settings
Pages
Pages
Edit Pages
Contact Us
Choose Phone Calling Time
Day From
Saturday
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Day To
Saturday
Sunday
Monday
Tuesday
Wednesday
Thursday
Friday
Hour From
00:00
01:00
02:00
03:00
04:00
05:00
06:00
07:00
08:00
09:00
10:00
11:00
12:00
13:00
14:00
15:00
16:00
17:00
18:00
19:00
20:00
21:00
22:00
23:00
Hour To
00:00
01:00
02:00
03:00
04:00
05:00
06:00
07:00
08:00
09:00
10:00
11:00
12:00
13:00
14:00
15:00
16:00
17:00
18:00
19:00
20:00
21:00
22:00
23:00
About Us
Saved
Page Content Text Is Here To Edit
Privacy
Saved
Page Content Text Is Here To Edit
FAQ
Added
Add


By creating an account with our store, you will be able to move through the checkout process faster, store multiple shipping addresses, view and track your orders in your account and more.
Create an AccountIf you have an account with us, please log in.


Created by: Lewis Mutuma


Apache SystemDS is released as a source artifact. Binary artifacts (including the ones available in Maven) are made available for your convenience. You will be prompted for a mirror Apache SystemDS is distributed under the Apache License, version 2.0.
Instructions for checking hashes and signatures is described on the Verifying Apache Software Foundation Releases page. These KEYS can be used to verify the integrity of the downloaded artifact using PGP signature (.asc).
We strongly encourage our users to configure a Maven repository mirror closer to their location.
Please read How to
Use Mirrors for Repositories.
Add the following dependencies to your Maven pom.xml.
<dependency> <groupId>org.apache.systemds</groupId> <artifactId>systemds</artifactId> <version>{{ site.data.project.release_version }}</version> </dependency>
Previous releases of Apache SystemML can be obtained from archives. Previous incubator releases can be obtained from incubator archives. For Spark 1.6 support, please use Apache SystemML 0.12.
If you want the latest in development version you can follow the build from source guide.
Install SystemDS


 I’m in an open field
somewhere in Texas, come alone. chainsaw-massacre me. bring a
hockey mask, your leather face, & I’ll wipe your knives gently when
I muss them with blood. it’s October. everywhere, children get
older. mothers & fathers watch as their children get older. it’s
October & someone’s red teeth gnaw at a mass of veal or venison
served up rare.
soon, I’ll drive past the big woods & I’ll worry that bodies might be
hidden there. I worry there are bodies in the dirt that won’t ever be
found. last summer, a man described his want for me as violent & I
believed him to be tender. somewhere, someone is holding a baby
& is not worried that the baby could die. last night, I dreamed I
was trapped inside a house with the rotting corpse of my fifth-grade
teacher & when I woke I got a nosebleed on my sheets.
six Octobers ago, they found her body. she was already dead. it’s
October now & I worry for her mother. I worry for her father &
her brother.  I want my
father & my sister. I need my sister little sister need my papa & my
momma want my sister baby sister & my papa & my momma &
my momma please let me talk to my
mom
it’s October. & I am ready for your nightmares. for your evil dead.
I am alone in the cabin of a closed-down summer camp. I’m
disturbing your peace. I’ll stay here & I’ll practice saying her name.
Kathleen. hack me up, drown me, throw me to wolves.
somewhere, someone thinks October is just like any other cylinder
of time.

 I am all the time turning to a pillar of salt & still I wake each morning being no man’s wife.


[gecode-users] Initializing domain of IntegerVars
Max Ostrowski
ChaosAngel at gmx.de
Mon Jul 18 10:21:27 CEST 2011
Hello,
currently i have to create some IntegerVariables and some constraints, and i'm doing this using the IntVar/2 constructor, restricting the variables domain.
Due to some design decisions it could be necessary to change this to something like:
IntVar x(*this, MIN_INT,MAX_INT);
dom(*this, x,2,12);
or worse
BoolVar a,b;
dom(*this, x,2,12, a);
dom(*this, x,24,42, b);
rel(*this, a, BOT_OR, b, 1).
Afterwards i will do post further constraints and do search.
Is this bad in terms of performance, and if, why.
(I can understand that i have to post the dom constraint first, because sending a constraint already does some propagation.
Furthermore: does the second variant (with the BOT_OR) also restrict the domain of the variable?)
Best,
Max
--
Empfehlen Sie GMX DSL Ihren Freunden und Bekannten und wir
belohnen Sie mit bis zu 50,- Euro! https://freundschaftswerbung.gmx.de
More information about the users
mailing list


Ian $14
have you heard he's on 57 pounds an hour?
has like 3 pipes but never uses them.
slapped sovra in the face with a fish once.
conditions his beard.
Elly $22
*SUPER IMPORTANT POST EVERYONE READ*. 'you're in love with me aren't you'. (worries constantly about money) books last minute flight across the world. steals clothes approximately every 3 minutes
Alex $8
'I was kidding!!!!!' 'you guys are dicks'. is a speccy nerd. 'what's for dinner'
Sovra $7
*tries to help*. ruins everything. if she was pulling santas sleigh she's be called rudolph the brown nosed raindeer. 'oh that's interesting name i've never heard that one before'
Freya $2.50
I just don't want to'. probably adopted. 'No, for the last time I haven't walked Luna today'. (is a straight 10) 'I look so ugly!!!!'


EventoL is a event management software initially developed to manage FLISoL conference.
Find Out MoreYou can create new user with your mail or social account (github, google, twitter, ...)
Ready to start your next event with EventoL?
That's great! Select a EventoL instance or deploy a new instance and do it.


{{blog.blog_name}}
{{blog.date_created}}
Previous
Next
Other blogs
Don't have any blogs.
{{item.date_created}}
{{item.blog_name}}


top
|
up
|
prev
| next
Operator Enumeration
Definition at line
16
of
DebugExpr.hpp
Enumerators
Name
Value
plus
minus
top
|
up
|
prev
| next


Creator: {{presentation.creator_info.username}}
Date created: {{presentation.date_created | date: "dd.MM.yyyy HH:mm"}}
Description: {{presentation.description}}
{{error}}


SuffolkEcon
is an experimental R package for the Department of Economics at Suffolk University to help teach introductory concepts in statistics, econometrics and optimization.
Currently the package is only available on GitHub. To install it, first install the remotes
package:
install.packages('remotes')
Then you can install SuffolkEcon
:
remotes::install_github('SuffolkEcon/SuffolkEcon')
and load it in an R script or an R notebook in the usual way:
library(SuffolkEcon)
The package is not meant to substitute for other packages in the R ecosystem that students will learn and use inside and outside of introductory courses.
Instead, SuffolkEcon
aims to make a more marginal contribution to teaching basic concepts and reducing handoff frictions between classes by providing some one-line routines to do things like:
In the spirit of fitting into the greater package network, SuffolkEcon
is built with tidyverse principles and is meant to be loaded alongside the tidyverse
(SuffolkEcon
imports dplyr
, ggplot
, stringr
and rlang
). All SuffolkEcon
functions return either data.frame
or ggplot
objects.
This package is very much a work in progress, so contributions and bug reports are welcome. Drop us a line at ldegeest [at] suffolk [dot] edu, or report a bug on GitHub.
This package was funded by a grant from the Center for Teaching and Scholarly Excellence at Suffolk University.


 Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
making it look like readable English. Many desktop publishing packages and web page editors now use Lorem Ipsum as their default model text, and a search for 'lorem ipsum' will uncover many web sites still in their infancy. Various versions have evolved over the years, sometimes by accident, sometimes on purpose (injected humour and the like).
In pharetra pretium convallis. Mauris sollicitudin ligula non mi hendrerit varius.,
Mauris sollicitudin In pharetra pretium convallis. ligula non mi hendrerit varius.,
convallis. In pharetra pretium Mauris sollicitudin ligula non mi hendrerit varius.,
mi hendrerit varius., In pharetra pretium convallis. Mauris sollicitudin ligula non
In pharetra pretium convallis. Mauris sollicitudin ligula non mi hendrerit varius.,
In pharetra pretium convallis. Mauris sollicitudin ligula non mi hendrerit varius.,
In pharetra pretium convallis. Mauris sollicitudin ligula non mi hendrerit varius.,
In pharetra pretium convallis. Mauris sollicitudin ligula non mi hendrerit varius.,
Template By W3layouts


Listed below are the jobs you have approved this week
| No. | Address | Approved | Date of Service | Photos |
|
|---|---|---|---|---|---|
| 00021 | 1234 Austin Drive, Austin TX 77001 | 00/00/0000 | 00/00/0000 | Inspect | |
| 00025 | 4321 Bobby Lane, Austin TX 77001 | 00/00/0000 | 00/00/0000 | Cleaning | |
| 00026 | 5678 Longand Blvd, Austin TX 77001 | 00/00/0000 | 00/00/0000 | Cleaning |


This project covers the most common geometric transformations - translation, rotation and scale. All these transformations in this project are applied to a cube and controlled by the keyboard. Try the above project following the instructions presented on canvas.
Open in a new tabAs we control the geometric transformations using the keyboard, all functions are applied in the KeyboardUpdate function.
function keyboardUpdate()
{
(...)
if ( keyboard.pressed("left") ) cube.translateX( -1 );
if ( keyboard.pressed("right") ) cube.translateX( 1 );
if ( keyboard.pressed("up") ) cube.translateY( 1 );
if ( keyboard.pressed("down") ) cube.translateY( -1 );
if ( keyboard.pressed("pageup") ) cube.translateZ( 1 );
if ( keyboard.pressed("pagedown") ) cube.translateZ( -1 );
let angle = degreesToRadians(10);
if ( keyboard.pressed("A") ) cube.rotateY( angle );
if ( keyboard.pressed("D") ) cube.rotateY( -angle );
if ( keyboard.pressed("W") )
{
scale+=.1;
cube.scale.set(scale, scale, scale);
}
if ( keyboard.pressed("S") )
{
scale-=.1;
cube.scale.set(scale, scale, scale);
}
}
As can be observed through the fragment code presented, in threejs one way to work with geometric transformations is through the methods available to any Object3D object. In this example we use the translateX-Y-Z methods to translate, the rotateY to rotate the cube along the Y axis in its space (i.e., object space) and the scale.set to change it's scale attribute.
Those methods are very useful but they do not allow a full control over how those transformations are applied. In the next project you will see how we can transform object in a different way.


Walchand College of Engineering, Sangli.
Examination Form
Firstname
Middlename:
Lastname:
Father's Name
Mother's Name
Upload Id Image
Department :
Department
CSE
IT
CIVIL
ELECTRICAL
ELECTRONICS
MECHANICAL
Year :
FIRST YEAR
SECOND YEAR
THIRD YEAR
FINAL YEAR
Phone :
Current Address :
Email
EXAM:
MSE
ESE
Register


| Label: | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication | Order Entry Vindication |
| Folder: | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication | OrderEntryVindication |
| Time stamp: | 20120518-150915 | 20120518-151233 | 20120518-151324 | 20120518-151355 | 20120518-152413 | 20120518-154053 | 20120518-155111 | 20120518-210307 |
| Display label: | Local data | Remote data | Open client 2 on remote data | Edit record client 2 | Edit record on server | No_Relate_State not set | All tables closed | No_Relate_State set again |
| Description: |
| TableQuery version: | 0.97 | 0.97 | 0.97 | 0.97 | 0.97 | 0.97 | 0.97 | 0.97 |
| Computer name: | STURE-PC | STURE-PC | STURE-PC | STURE-PC | STURE-PC | STURE-PC | STURE-PC | STURE-PC |
| Zero Select Time: | n/a | n/a | n/a | n/a | n/a | n/a | n/a | n/a |
| Debugger present: | No | No | No | No | No | No | No | No |
| VDF version | 17.0 | 17.0 | 17.0 | 17.0 | 17.0 | 17.0 | 17.0 | 17.0 |
| Operating system: | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) | Windows 7 (32 bit) |
| Time of execution: | 18-05-2012 17:09:15,05 | 18-05-2012 17:12:33,103 | 18-05-2012 17:13:24,216 | 18-05-2012 17:13:55,158 | 18-05-2012 17:24:13,282 | 18-05-2012 17:40:53,348 | 18-05-2012 17:51:11,515 | 18-05-2012 23:03:07,247 |
| Total excution time: | 8,701 | 9,652 | 9,36 | 322,887 | 323,876 | 350,318 | 318,842 | 319,107 |
| Customer/OrderHea/OrderDtl. A 3-level loop that finds 488 records in total. Each loop is called 25 times (grand total 12200 records) and the time it takes to do that is recorded. | ||||||||
| DataDictionaries (ms) | 2893 | 3420 | 3157 | 162894 | 161695 | 191220 | 159601 | 159335 |
| Clear/Move/Repeat/Find (ms) | 368 | 451 | 452 | 29087 | 29340 | 28854 | 29184 | 29366 |
| TableQuery (ms) | 1981 | 2132 | 2109 | 34256 | 34757 | 34584 | 33225 | 33177 |
| TableQueryStructure (ms) | 2734 | 2852 | 2846 | 34677 | 35899 | 34672 | 34832 | 35163 |
| Customer full table scan. 100 records. Again it is called 25 times for each strategy. | ||||||||
| DataDictionaries (ms) 2 | 529 | 583 | 583 | 46263 | 46167 | 46038 | 46663 | 45666 |
| Clear/Move/Repeat/Find (ms) 2 | 39 | 48 | 48 | 7408 | 7662 | 7088 | 7081 | 7282 |
| TableQuery (ms) 2 | 157 | 166 | 164 | 8301 | 8355 | 7862 | 8078 | 8949 |


Installing the dmlite-devel RPM should push all the necessary build dependencies. You probably will need some plugins installed to do the tests, as dmlite-plugins-mysql, for instance, and configure them as explained in the configuration guide.
The compilation commands shown assume that you have these components in their standard locations, and that the version of the
Boost libraries is equal or higher than 1.41.
For SL5, you can install boost141-devel from EPEL, but in that case you will need to add the parameter -I /usr/include/boost141


This sub-page provide three different visual representations of the findings from our master thesis. The visual components are available with two different data sets; the "old" (TCP) data and the new, unseen data. The first visual component is an interactive bar chart presenting stance distribution per year for climate related publications. The second component provide an interactive relational graph showing the relation between publication stances and common subjects found in the data sets. The last shows the geographic distribution of climate related publications based on author affiliations, sorted by the stance expressed in the abstract.


Slide to Begin
Swipe to Begin
Click me twice
This application only works in Landscape orientation
please rotate your screen
Hit E for left, and I for right.
If the red X appears, press the other key to make the X go away.
Hit space bar if the word or image belongs to one of the two categories, but DO NOT hit any key if not.


## What matters Everybody knows that: > Writing Forms is a tedious task. You have to deal with **type checking**, **validation** in general, button **disabling while submitting**, response **feedbacks**... Over and over. Again. **Pacem JS** (its predecessors, mainly) is born essentially to give some relief on that. The idea is to serve auto-generated form fields (incuding validators) based on entity **metadata**. That's what `<pacem-form-field>` exists for. typing docs...
## Input Sets and Groups Combined input fields:
## Extra Additional content aside the input field:


|
Curved top headstone with ornate ropework carved round arch of stone and pillars carved at sides. Tree growing right against stone so some of MI is difficult to read.
IN AFFECTIONATE R[EMEMBRANCE] OF ALFRED WILLIAM SON OF WILLIAM SARAH CANTWELL WHO DIED AUG. 13 1873. IN THE [3] YEAR OF HIS AGE ALSO OF SARAH CANTWELL DIED MARCH 16 1904 AGED 62 YEARS ALSO OF WILLIAM CANTWELL DIED OCTOBER 11TH 1921 AGED 79 YEARS CHURCHWARDEN FOR OVER FIFTY YEARS A FRIEND TO ALL, AN ENEMY TO NONE
Burial Register: A788, B364, B575
|
|


A light wave consists of energy in the form of electric and magnetic fields which vibrate perpendicular to one another and are called the electromagnetic spectrum . The word light usually refers to the visible part of the electromagnetic spectrum. Energy in light waves is transported by particles called photons. Photons do not have any mass, but the energy they carry can be measured in terms of wavelength.
Light (or electromagnetic radiation), can be thought of as either a particle or a wave. As a wave, light has:
• a wavelength,
• a frequency,
• a speed,
• an energy,
The electromagnetic spectrum from shortest to longest wavelength (i.e. from most energetic to least energetic):
Gamma-ray: < 0.01 nm
X-ray: 0.01 - 10 nm
Ultra violet (UV): 10 nm – 380 nm
Visible: 380 – 700 nm
Infrared (IR): 700 nm – 1mm (700 nm – 106 nm)
Microwave: 1 mm – 1 m
Radio: > 1 m
The shorter the wavelength of light, the more energy it carries. Note that the speed of light is constant (in the entire universe) so all of those types of light will always travel at the speed of light. We usually designate the speed of light with little ‘c ’ and its value is 300,000 km/s.


Ops! Make sure JavaScript is enabled in your browser.
If you have already enabled javascript,
click here
to get redirected to main page


--- intro: true block: title: "Borker dot com " description: | Defining the future of work, collaboration and society. [Read more](/about). ---


<EMAIL_ADDRESS>94, Eerste Jan Steenstraat, 1072 NP (NL) +31 650412426
Hello, Hello ! I'm a graphic designer currently living/working in Amsterdam. I graduated in typography at the School of Graphic research (E.R.G), Brussels in 2014 and got a second degree in Graphic design from the Gerrit Rietveld Academie in Amsterdam in 2016.


Welcome to your e-thermostat.
The weather outside is:
N/A
Your thermostat is set to:
Get weather!
+
-
reset
Status:
power saving mode is
ON
PSM on
PSM off


Executable Specifications with Scrum: A Practical Guide to Agile Requirements Discovery
ISBN-13:<PHONE_NUMBER>131
ISBN-10:<PHONE_NUMBER>
Author: Mario Cardinal
Edition: 1
Binding: Paperback
Publisher: Addison-Wesley Professional
Published: August 2013
List Price: $34.99
Best Rental Prices |
||||
|---|---|---|---|---|
| #1 |
Free shipping Ready to ship |
Notes |
||
| #2 |
+3.95 shipping Ready to ship |
Notes |


Welcome
Login
Don't registered yet ?
Salary


Personal Details
Education Details
Travel Details
Social Relations and Involvement
Other Anonymous Details
Anonymous Details
User ID:
Field Name
Value
Options
Done
Submit
Proceed


resolvedstellarpops.galaxies package¶
Submodules¶
resolvedstellarpops.galaxies.asts module¶
All about Artificial star tests
- resolvedstellarpops.galaxies.asts.ast_correct_trilegal_sim(sgal, fake_file=None, outfile=None, overwrite=False, spread_outfile=None, leo_method=False, spread_outfile2=None, asts_obj=None)[source]¶
correct trilegal simulation with artificial star tests. options to write the a copy of the trilegal simulation with the corrected mag columns, and also just the color, mag into a file (spread_too).
ARGS: sgal: simgalaxy instance with convert_mag method already called. fake_file: string - matchfake file(s), or an artifical_star_tests instance(s). outfile: string - ast_file to write overwrite: overwrite output files, is also passed to write_spread spread_too: call write_spread flag spread_outfile: outfile for write_spread
RETURNS: adds corrected mags to sgal.data.data_array and updates sgal.data.key_dict
if fake_file is an a list of opt and ir, will do the corrections twice. fake_file as artificial_star_instance won’t work if leo_method=True.
- class resolvedstellarpops.galaxies.asts.ASTs(filename)[source]¶
Bases: object
class for reading and using artificial stars. If filename is not a matchfake file, MUST create a new method to read in artificial stars. for load_fake: mag1 is assumed to be mag1in mag2 is assumed to be mag2in mag1diff is assumed to be mag1in-mag1out mag2diff is assumed to be mag2in-mag2out filename is assumed as matchfake: PID_TARGET_FILTER1_FILTER2_... or TARGET_FILTER1_FILTER2_ this is how attributes target, filter1, and filter2 are assigned.
Methods
- ast_correction(obs_mag1, obs_mag2, binsize=0.2, bins=None, not_rec_val=nan)[source]¶
apply ast correction to input mags.
ARGS: obs_mag1, obs_mag2: N, 1 arrays
KWARGS: binsize, bins: for bin_asts if not already run.
RETURNS: cor_mag1, cor_mag2: ast corrected magnitudes
RAISES: returns -1 if obs_mag1 and obs_mag2 are different sizes
Corrections are made by going through obs_mag1 in bins of bin_asts and randomly selecting magdiff values in that ast_bin. obs_mag2 simply follows along since it is tied to obs_mag1.
Random selection was chosen because of the spatial nature of artificial star tests. If there are 400 asts in one mag bin, and 30 are not recovered, random selection should match the distribution (if there are many obs stars).
If there are obs stars in a mag bin where there are no asts, will throw the star out unless the completeness in that mag bin is more than 50%.
TODO: possibly return magXdiff rather than magX + magXdiff? reason not to: using AST results from one filter to another isn’t kosher. At least not glatt kosher.
- bin_asts(binsize=0.2, bins=None)[source]¶
bin the artificial star tests
ARGS: bins: bins for the asts binsize: width of bins for the asts
RETURNS: self.am1_inds, self.am2_inds: the indices of the bins to
which each value in mag1 and mag2 belong (see np.digitize).self.ast_bins: bins used for the asts.
- completeness(combined_filters=False, interpolate=False)[source]¶
calculate the completeness of the data in each filter ARGS: combined_filters: Use individual or combined ast recovery interpolate: add a 1d spline the completeness function to self RETURNS: self.comp1 the completeness in filter1 binned with self.ast_bins self.comp2 same as above but filter2
resolvedstellarpops.galaxies.galaxies module¶
wrapper for lists of galaxy objects, each method returns lists, unless they are setting attributes.
- class resolvedstellarpops.galaxies.galaxies.Galaxies(galaxy_objects)[source]¶
Bases: resolvedstellarpops.galaxies.starpop.StarPop
wrapper for lists of galaxy objects, each method returns lists, unless they are setting attributes.
Methods
- all_stages(*stages)[source]¶
adds the indices of any stage as attributes to galaxy. If the stage isn’t found, -1 is returned.
- intersection(**kwargs)[source]¶
ex kwargs = {‘filter2’:’F814W’, ‘filter1’:’F555W’} will return a list of galaxy objects that match all kwarg values.
- select_on_key(key, val)[source]¶
ex filter2 == F814W works great with strings or exact g.key==val. rounds z to four places, no error handling.
- squish(*attrs, **kwargs)[source]¶
concatenates an attribute or many attributes and adds them to galaxies instance – with an ‘s’ at the end to pluralize them... that might be stupid. ex for gal in gals:
gal.ra = gal.data[‘ra’] gal.dec = gal.data[‘dec’]gs = Galaxies.galaxies(gals) gs.squish(‘color’, ‘mag2’, ‘ra’, ‘dec’) gs.ras ...
resolvedstellarpops.galaxies.galaxy module¶
- class resolvedstellarpops.galaxies.galaxy.Galaxy(fname, filetype=None, hla=True, angst=True, ext=None, band=None, photsys=None, trgb=nan, z=-99, Av=None, dmod=None, filter1=None, filter2=None)[source]¶
Bases: resolvedstellarpops.galaxies.starpop.StarPop
angst and angrrr galaxy object. data is a ascii tagged file with stages.
Methods
- cut_mag_inds(mag2cut, mag1cut=None)[source]¶
a simple function to return indices of magX that are brighter than magXcut.
resolvedstellarpops.galaxies.simgalaxy module¶
- class resolvedstellarpops.galaxies.simgalaxy.SimGalaxy(trilegal_out, filter1, filter2, photsys=None, count_offset=0.0, table_data=False)[source]¶
Bases: resolvedstellarpops.galaxies.starpop.StarPop
reads a trilegal output catalog there is an issue with mags being abs mag or app mag. If dmod == 0, mags are assumed to be abs mag and get title() attributes.
Methods
- cmd_by_stage(color, mag2, inds=None, xlim=None, ylim=None, extra='', figname=None, trgb=None, cmap=None, **kwargs)[source]¶
made to be called from diagnostic plots. Make a panel of plots for each stage (get_label_stage)
- diagnostic_cmd(trgb=None, figname=None, inds=None, **kwargs)[source]¶
make a cmd of both simulated cmd and ast corrected cmd by stage. input
will make diagnostic plots depending on attributes available. ast_mag2, mag2, Mag2. See cmd_by_stage
optional input trgb
plot a line at the trgb mag2 with the number of stars brighter than trgb.- figname
- save the plot as figname and figname_spread
- inds
- only use some subset of indices
kwargs: xlim tuple of plot xlimits ylim tuple of plot ylimits
- hist_by_attr(attr, bins=10, stage=None, slice_inds=None)[source]¶
builds a histogram of some attribute (mass, logl, etc) slice_inds will cut the full array, and stage will limit to only that stage.
- load_ic_mstar()[source]¶
separate C and M stars, sets their indicies as attributes: icstar and imstar, will include artificial star tests (if there are any).
Trilegal simulation must have been done with -l and -a flags.
This is done using self.rec meaning use should be e.g.: self.ast_mag2[self.rec][self.icstar]
Hard coded: M star: C/O <= 1, LogL >= 3.3 Mdot <=-5, and TPAGB flag C star: C/O >= 1, Mdot <=-5, and TPAGB flag
- normalize(stage_lab, filt1, filt2, mag=None, stage=None, by_stage=True, magcut=999.0, useasts=False, verts=None, ndata_stars=-inf, sinds_cut=None)[source]¶
randomly sample stars from a trilegal simulation maintaining their distribution. Sample selection is set either by specific indices of data in some stage or by a CMD polygon based on data.
assumes mag2 either self.mag2 or if useasts self.ast_mag2
INPUT stage_lab: the label of the stage, probably ‘ms’ or ‘rgb’ it will be used to set attribute names by_stage: DO NOT USE THIS
mag2, stage: data arrays of filter2 and the tagged stage inds if using galaxy object, mag2 = gal.mag2, stage = gal.stage.- else, by verts: requires verts and ndata_stars
- don’t normalize by data stage (e.g., not a tagged file) in this case verts should be a cmd polygon and ndata_stars should be the number of data stars in that cmd polygon.
magcut: flat mag2 cut to apply (return brighter than) useasts: use artificial star test corrections. sinds_cut: use a slice of simgalaxy mag2 instead of all (currently
overridden if useasts=True)RETURNS normalization: N_i/N_j – the lower the fraction the better. Consider a larger simulation if normalization is less than 0.75.
N_i = number of stars in stage or verts N_j = number of simulated stars in stage or vertsinds: random sample of simulated stars < normalization (to slice simgalaxy array)
creates attributes: [stage]_norm and [stage]_norm_inds Note: if there are no simulated stars in the normalization region, will return inds = [-1] and norm = 999.
resolvedstellarpops.galaxies.starpop module¶
- class resolvedstellarpops.galaxies.starpop.StarPop[source]¶
Bases: object
Methods
- add_data(**new_cols)[source]¶
add columns to data new_cols: {new_key: new_vals} new_vals must have same number of rows as data. Ie, be same length as self.data.shape[0] adds new data to self.data.data_array and self.data.key_dict returns new header string (or -1 if nrows != len(new_vals))
- convert_mag(dmod=0.0, Av=0.0, target=None, shift_distance=False, useasts=False)[source]¶
convert from mag to Mag or from Mag to mag or just shift distance. pass dmod, Av, or use AngstTables to look it up from target. shift_distance: for the possibility of doing dmod, Av fitting of model to data the key here is that we re-read the mag from the original data array.
useasts only work with shift_distance is true. It will calculate the original dmod and av from self, and then shift that to the new dmod av. there may be a faster way, but this is just multiplicative effects. Without shift_distance: Just for common usage. If trilegal was given a dmod, it will swap it back to Mag, if it was done at dmod=10., will shift to given dmod. mag or Mag attributes are set in __init__.
- decorate_cmd(mag1_err=None, mag2_err=None, trgb=False, ax=None, reddening=True, dmag=0.5, text_kw={}, errors=True, cmd_errors_kw={}, filter1=None, text=True)[source]¶
add annotations on the cmd, such as reddening vector, typical errors etc
- delete_data(data_names=None)[source]¶
for wrapper functions, I don’t want gigs of data stored when they are no longer needed.
- double_gaussian_contamination(all_verts, dcol=0.05, Color=None, Mag2=None, color_sep=None, diag_plot=False, absmag=False, thresh=5)[source]¶
This function fits a double gaussian to a color histogram of stars within the <maglimits> and <colorlimits> (tuples).
It then finds the intersection of the two gaussians, and the fraction of each integrated gaussian that crosses over the intersection color line.
- get_header()[source]¶
utility for writing data files, sets header attribute and returns header string.
- hess_plot(fig=None, ax=None, colorbar=False, **kwargs)[source]¶
Plots a hess diagram with imshow.
See :func: helpers.plot_hess
- make_hess(binsize, absmag=False, useasts=False, slice_inds=None, **kwargs)[source]¶
adds a hess diagram of color, mag2 or Color, Mag2 (if absmag is True). if useasts is true will use ast_mags.
slice_inds will slice the arrays and only bin those stars, there is no evidence besides the hess tuple itself that hess is not of the full cmd.
See :func: helpers.make_hess
- make_lf(mag, bins=None, stages=None, inds=None, bin_width=0.1, hist_it_up=False, stage_inds=None)[source]¶
make a lf out of mag
ARGS: mag: array to hist bins: bins for the histogram (or give bin_width) stages: evolutionary stages (will add individually) inds: indices of array include bin_width: width of mag bin for histogram stage_inds: indices to slice the stages RETURNS if stages, will name the attributes self.i[stage]_lfhist self.i[stage]_lfbins otherwise, self.lfhist self.lfbins
- put_a_line_on_it(ax, val, consty=True, color='black', ls='--', lw=2, annotate=True, filter1=None, annotate_fmt='$TRGB=%.2f$', **kwargs)[source]¶
if consty is True: plots a constant y value across ax.xlims(). if consty is False: plots a constant x on a plot of y vs x-y
- stars_in_region(mag2, mag_dim, mag_bright, mag1=None, verts=None, col_min=None, col_max=None)[source]¶
counts stars in a region. Give mag2 and the mag2 limits. If col_min, col_max, and verts are none, will just give all stars between those mag limits (if no color info is used mag2 can actually be mag1.) If verts are given (Nx2) array, will use those, otherwise will build a polygon from col_* and mag_* limits.
Returns indices inside.
- resolvedstellarpops.galaxies.starpop.plot_cmd(starpop, color, mag, ax=None, xlim=None, ylim=None, xlabel=None, ylabel=None, contour_kwargs={}, scatter_kwargs={}, plot_kwargs={}, scatter=True, levels=5, threshold=75, contour_lw={}, color_by_arg_kw={}, slice_inds=None, hist_bin_res=0.05, log_counts=False)[source]¶
plot a stellar color-magnitude diagram
Parameters: starpop: StarPop instance :
population to plot
color: ndarray, dtype=float, ndim=1 :
colors of the stars
mag: ndarray, dtype=float, ndim=1 :
magnitudes of the stars
ax: plt.Axes instance, optional (default=plt.gca()) :
axes in which it will make the plot
xlim: optional :
if set, adjust the limits on the color axis
ylim: optional :
if set, adjust the limits on the magnitude axis
xlabel: str, optional :
label of the color axis
ylabel: str, optional :
label of the magntiude axis
contour_args: dict, optional :
keywords for contour plot
scatter_args: dict, optional :
keywords for scatter
plot_args: dict, optional :
kweywords for plot
scatter: bool, optional (default=True) :
CMD will be generated with plt.scatter
levels: optional (default=5) :
threshold: optional (default=75) :
contour_lw: optional :
color_by_arg_kw: optional :
slice_inds: slice instance, optional :
if set, cull the data and only consider this slice
hist_bin_res: optional (default=0.05), :
log_counts: bool, optional (default=False) :
- resolvedstellarpops.galaxies.starpop.color_by_arg(starpop, xcol, ycol, colorcol, bins=None, cmap=None, ax=None, fig=None, labelfmt='$%.3f$', xdata=None, ydata=None, coldata=None, xlim=None, ylim=None, slice_inds=None, legend=True)[source]¶
Parameters: starpop: StarPop instance :
population to plot
xcol: ndarray :
ycol: ndarray :
colorcol: ndarray :
bins: optional :
cmap: optional :
colormap to use
ax: plt.Axes instance, optional (default=plt.gca()) :
labelfmt: str, optional (default=’$%.3f$’) :
colorbar label format
xdata: optional :
ydata: optional :
coldata: optional :
xlim: optional :
if set, adjust the limits on the x-axis
ylim: optional :
if set, adjust the limits on the y-axis
slice_inds: slice instance, optional :
if set, cull the data and only consider this slice
legend: bool, optional (default=True) :
if set, add a legend to the figure


Uses of Class
io.permazen.util.ByteWriter
-
Packages that use ByteWriter Package Description io.permazen.core Core classes for the Permazen Java persistence layer.io.permazen.core.type PermazenFieldType
s.io.permazen.kv.util Utility classes relating to theKVDatabase
interface.io.permazen.util General utility classes used with Permazen. -
-
Uses of ByteWriter in io.permazen.core
Methods in io.permazen.core with parameters of type ByteWriter Modifier and Type Method Description void
FieldType. validateAndWrite(ByteWriter writer, Object obj)
Convenience method that both validates and encodes a value.abstract void
FieldType. write(ByteWriter writer, T value)
Write a value to the given output.void
ObjId. writeTo(ByteWriter writer)
Write the binary encoding of this instance to the given output. -
Uses of ByteWriter in io.permazen.core.type
Methods in io.permazen.core.type with parameters of type ByteWriter Modifier and Type Method Description void
BigDecimalType. write(ByteWriter writer, BigDecimal value)
void
BigIntegerType. write(ByteWriter writer, BigInteger value)
void
BitSetType. write(ByteWriter writer, BitSet bitSet)
void
BooleanArrayType. write(ByteWriter writer, boolean[] array)
void
BooleanType. write(ByteWriter writer, Boolean value)
void
CharacterArrayType. write(ByteWriter writer, char[] array)
void
CharacterType. write(ByteWriter writer, Character value)
void
DateType. write(ByteWriter writer, Date date)
void
DoubleArrayType. write(ByteWriter writer, double[] array)
void
DoubleType. write(ByteWriter writer, Double value)
void
DurationType. write(ByteWriter writer, Duration duration)
void
EnumType. write(ByteWriter writer, EnumValue value)
void
FloatArrayType. write(ByteWriter writer, float[] array)
void
FloatType. write(ByteWriter writer, Float value)
void
InetAddressType. write(ByteWriter writer, InetAddress addr)
void
InstantType. write(ByteWriter writer, Instant instant)
void
IntegralArrayType. write(ByteWriter writer, T array)
void
IntegralType. write(ByteWriter writer, T value)
void
LocalDateTimeType. write(ByteWriter writer, LocalDateTime localDateTime)
void
LocalDateType. write(ByteWriter writer, LocalDate localDate)
void
LocalTimeType. write(ByteWriter writer, LocalTime localTime)
void
MonthDayType. write(ByteWriter writer, MonthDay monthDay)
void
NullSafeType. write(ByteWriter writer, T value)
void
ObjectArrayType. write(ByteWriter writer, E[] array)
void
ObjIdType. write(ByteWriter writer, ObjId id)
void
PeriodType. write(ByteWriter writer, Period period)
void
ReferenceFieldType. write(ByteWriter writer, ObjId id)
void
StringConvertedType. write(ByteWriter writer, T obj)
void
StringType. write(ByteWriter writer, String value)
void
TupleFieldType. write(ByteWriter writer, T tuple)
void
UnsignedIntType. write(ByteWriter writer, Integer value)
void
UUIDType. write(ByteWriter writer, UUID uuid)
void
VoidType. write(ByteWriter writer, Void value)
void
YearMonthType. write(ByteWriter writer, YearMonth yearMonth)
void
YearType. write(ByteWriter writer, Year year)
void
ZoneOffsetType. write(ByteWriter writer, ZoneOffset zoneOffset)
-
Uses of ByteWriter in io.permazen.kv.util
Methods in io.permazen.kv.util with parameters of type ByteWriter Modifier and Type Method Description protected abstract void
AbstractKVNavigableSet. encode(ByteWriter writer, Object obj)
Encode the given object into abyte[]
key.protected void
KVNavigableSet. encode(ByteWriter writer, Object obj)
protected abstract void
AbstractKVNavigableMap. encodeKey(ByteWriter writer, Object obj)
Encode the given key object into abyte[]
key.protected void
KVNavigableMap. encodeKey(ByteWriter writer, Object obj)
-
Uses of ByteWriter in io.permazen.util
Methods in io.permazen.util with parameters of type ByteWriter Modifier and Type Method Description static void
LongEncoder. write(ByteWriter writer, long value)
Encode the given value to the output.static void
UnsignedIntEncoder. write(ByteWriter writer, int value)
Encode the given value to the output.static void
ByteUtil. writeInt(ByteWriter writer, int value)
Write anint
as four big-endian bytes.static void
ByteUtil. writeLong(ByteWriter writer, long value)
Write along
as eight big-endian bytes.Constructors in io.permazen.util with parameters of type ByteWriter Constructor Description ByteReader(ByteWriter writer)
Constructor.ByteReader(ByteWriter writer, int mark)
Constructor.
-


Start
Leaves from the Vine
Stop